Add tests for notification profilers (#57429)
authorDavid Mason <davmason@microsoft.com>
Tue, 17 Aug 2021 18:32:20 +0000 (11:32 -0700)
committerGitHub <noreply@github.com>
Tue, 17 Aug 2021 18:32:20 +0000 (11:32 -0700)
commite9e9f1054d2a262128208f275913e88b2b0df8c7
treeba4ea2075dd392ec749dde9b4ba4c0e4c261f04d
parent80c7acc9dbfb1ad6021ca0ee2a3ca5adb46bf467
Add tests for notification profilers (#57429)

Add CI tests for notification profilers, and fix a couple things to make life with multiple profilers easier
  * Reduced default timeout for profiler detach - we used to try at 300ms, 600ms, 5s, 10s, and then 10 minutes. The check is just a read of an int, so there's no reason to wait 10 minutes
  * Got rid of a couple asserts that were wrong since switching from the dedicated profiler attach thread to the diagnostics server implementation
  * ProfControlBlock::GetProfilerInfo would only work for active profilers, not attaching profilers, which could cause subtle bugs
30 files changed:
src/coreclr/dlls/mscorrc/mscorrc.rc
src/coreclr/inc/profilepriv.h
src/coreclr/inc/profilepriv.inl
src/coreclr/vm/eetoprofinterfaceimpl.cpp
src/coreclr/vm/profdetach.cpp
src/coreclr/vm/proftoeeinterfaceimpl.cpp
src/tests/profiler/common/ProfilerTestRunner.cs
src/tests/profiler/multiple/multiple.cs [new file with mode: 0644]
src/tests/profiler/multiple/multiple.csproj [new file with mode: 0644]
src/tests/profiler/native/CMakeLists.txt
src/tests/profiler/native/classfactory.cpp
src/tests/profiler/native/eltprofiler/slowpatheltprofiler.h
src/tests/profiler/native/eventpipeprofiler/eventpipereadingprofiler.h
src/tests/profiler/native/eventpipeprofiler/eventpipewritingprofiler.h
src/tests/profiler/native/gcallocateprofiler/gcallocateprofiler.h
src/tests/profiler/native/gcbasicprofiler/gcbasicprofiler.h
src/tests/profiler/native/gcprofiler/gcprofiler.h
src/tests/profiler/native/getappdomainstaticaddress/getappdomainstaticaddress.h
src/tests/profiler/native/guids.cpp
src/tests/profiler/native/metadatagetdispenser/metadatagetdispenser.h
src/tests/profiler/native/multiple/multiple.cpp [new file with mode: 0644]
src/tests/profiler/native/multiple/multiple.h [new file with mode: 0644]
src/tests/profiler/native/nullprofiler/nullprofiler.h
src/tests/profiler/native/profiler.cpp
src/tests/profiler/native/profiler.h
src/tests/profiler/native/rejitprofiler/rejitprofiler.h
src/tests/profiler/native/releaseondetach/releaseondetach.cpp
src/tests/profiler/native/releaseondetach/releaseondetach.h
src/tests/profiler/native/transitions/transitions.h
src/tests/profiler/unittest/releaseondetach.cs