Fix nested calls to Assembly Load Start tracing (#55700)
authorDavid Wrighton <davidwr@microsoft.com>
Fri, 16 Jul 2021 23:04:41 +0000 (16:04 -0700)
committerGitHub <noreply@github.com>
Fri, 16 Jul 2021 23:04:41 +0000 (16:04 -0700)
commit719d56525ea7b89d052420e7cea88786faf771df
tree0a43bde6191cd1ab0d112fe0fb7f85f5aa771225
parent0851fee685f5a849bb3e554c4765ab3830e6bb7b
Fix nested calls to Assembly Load Start tracing (#55700)

The name_with_pid test ends up testing the behavior of event tracing in the presence of composite images.

In the presence of a composite image, it might happen attempting to send trace data may force an attempt to load System.Private.CoreLib thus causing an stackoverflow as attempting to report the load of System.Private.CoreLib will trigger a load of System.Private.CoreLib, etc. This fix steps around the issue by using a thread local variable to skip subsequent attempts to report the load of System.Private.CoreLib.

Fixes #55786
src/coreclr/binder/bindertracing.cpp
src/tests/tracing/eventpipe/complus_config/name_config_with_pid.cs