Setup support for managed runtime events (#87785)
authorLakshan Fernando <lakshanf@hotmail.com>
Thu, 6 Jul 2023 12:29:19 +0000 (05:29 -0700)
committerGitHub <noreply@github.com>
Thu, 6 Jul 2023 12:29:19 +0000 (05:29 -0700)
commitb78345e5296c171dc3f43443a83dcf8df0800b83
treea7d85911940f077207f62ec76af388234f08e79e
parentb3d2503a06ff99104f91917077f9e2132118b27e
Setup support for managed runtime events (#87785)

* preliminery managed runtime event support

* Linux fixes 1

* full portable threadpool support

* checkpoint before python script

* Additional GC event support

* NativeAOT to use sink threadpool file

* CI check

* Enable GC runtime tests

* Post main merge fixups

* change tests that run in CI

* Support native sinks for threading events

* Enable managed exceptions via eventpipe

* Move Exception event to EventPipe

* Add an empty exception event to disabled EventPipe

* make events do no-op in disabled eventpipe

* Update src/coreclr/nativeaot/Runtime/clretwallmain.h

Co-authored-by: Elinor Fung <elfung@microsoft.com>
* FB first stage

* Test change

* FB

* latest FB

* Pulled PR 88365

* FB

---------

Co-authored-by: Elinor Fung <elfung@microsoft.com>
43 files changed:
eng/pipelines/runtime.yml
src/coreclr/nativeaot/Runtime/EventPipeInterface.h
src/coreclr/nativeaot/Runtime/clretwallmain.h
src/coreclr/nativeaot/Runtime/clreventpipewriteevents.h
src/coreclr/nativeaot/Runtime/diagnosticserveradapter.h
src/coreclr/nativeaot/Runtime/disabledeventpipeinternal.cpp
src/coreclr/nativeaot/Runtime/disabledruntimeeventinternal.cpp [new file with mode: 0644]
src/coreclr/nativeaot/Runtime/eventpipe/CMakeLists.txt
src/coreclr/nativeaot/Runtime/eventpipe/disableddotnetruntime.cpp
src/coreclr/nativeaot/Runtime/eventpipe/dotnetruntime.cpp
src/coreclr/nativeaot/Runtime/eventpipe/ds-rt-aot.h
src/coreclr/nativeaot/Runtime/eventpipe/ds-rt-types-aot.h
src/coreclr/nativeaot/Runtime/eventpipe/ep-rt-aot.h
src/coreclr/nativeaot/Runtime/eventpipe/ep-rt-config-aot.h
src/coreclr/nativeaot/Runtime/eventpipe/ep-rt-types-aot.h
src/coreclr/nativeaot/Runtime/eventpipeadapter.h
src/coreclr/nativeaot/Runtime/eventpipeadaptertypes.h
src/coreclr/nativeaot/Runtime/eventpipeinternal.cpp
src/coreclr/nativeaot/Runtime/eventtrace.h
src/coreclr/nativeaot/Runtime/gctoclreventsink.cpp
src/coreclr/nativeaot/Runtime/rheventtrace.cpp
src/coreclr/nativeaot/Runtime/runtimeeventinternal.cpp [new file with mode: 0644]
src/coreclr/nativeaot/System.Private.CoreLib/src/System.Private.CoreLib.csproj
src/coreclr/nativeaot/System.Private.CoreLib/src/System/Diagnostics/Eventing/NativeRuntimeEventSource.Threading.NativeSinks.NativeAot.cs [new file with mode: 0644]
src/coreclr/nativeaot/System.Private.CoreLib/src/System/Exception.NativeAot.cs
src/coreclr/nativeaot/System.Private.CoreLib/src/System/Runtime/RuntimeImports.cs
src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems
src/tests/tracing/Directory.Build.props [new file with mode: 0644]
src/tests/tracing/eventcounter/runtimecounters.csproj
src/tests/tracing/eventpipe/config/name_config_with_pid.csproj
src/tests/tracing/eventpipe/diagnosticport/diagnosticport.csproj
src/tests/tracing/eventpipe/eventsvalidation/ExceptionThrown_V1.cs
src/tests/tracing/eventpipe/eventsvalidation/ExceptionThrown_V1.csproj
src/tests/tracing/eventpipe/eventsvalidation/GCEvents.cs
src/tests/tracing/eventpipe/eventsvalidation/GCEvents.csproj
src/tests/tracing/eventpipe/eventsvalidation/GCFinalizers.cs
src/tests/tracing/eventpipe/eventsvalidation/GCFinalizers.csproj
src/tests/tracing/eventpipe/providervalidation/providervalidation.cs
src/tests/tracing/eventpipe/providervalidation/providervalidation.csproj
src/tests/tracing/eventpipe/reverse/reverse.csproj
src/tests/tracing/eventpipe/simpleprovidervalidation/simpleprovidervalidation.cs [deleted file]
src/tests/tracing/eventpipe/simpleruntimeeventvalidation/simpleruntimeeventvalidation.cs [new file with mode: 0644]
src/tests/tracing/eventpipe/simpleruntimeeventvalidation/simpleruntimeeventvalidation.csproj [moved from src/tests/tracing/eventpipe/simpleprovidervalidation/simpleprovidervalidation.csproj with 88% similarity]