summaryrefslogtreecommitdiff
path: root/src/inc
diff options
context:
space:
mode:
authorSean Gillespie <segilles@microsoft.com>2018-01-23 18:53:30 -0800
committerGitHub <noreply@github.com>2018-01-23 18:53:30 -0800
commitfacdc8b97f73973fb416ed13e4b9dd9a255864bf (patch)
treec6be1ef07de8d324dcb121da524c13458d7f0f63 /src/inc
parent0bafdbc71e5a3efe6b6df0cbcf5aee5081a3e4c8 (diff)
downloadcoreclr-facdc8b97f73973fb416ed13e4b9dd9a255864bf.tar.gz
coreclr-facdc8b97f73973fb416ed13e4b9dd9a255864bf.tar.bz2
coreclr-facdc8b97f73973fb416ed13e4b9dd9a255864bf.zip
[Local GC] FEATURE_EVENT_TRACE 1/n: Tracking Event State (#15873)
* [Local GC] FEATURE_EVENT_TRACE 1/n: Add infrastructure for keeping event state within the GC and plumbing to communicate event state changes * Code review feedback: use a load without a barrier in IsEnabled and put debug-only code under TRACE_GC_EVENT_STATE * Address code review feedback: add EventPipe callback and comments * Fix the non-FEATURE_PAL build * Fix an issue where the GC fails to react to ETW callbacks to occur before the GC is initialized (e.g. on startup when an ETW session is already active) * Simplify callback locking scheme * Add a separate callback for each EventPipe provider and funnel them all through a common handler * Fix non-FEATURE_PAL build
Diffstat (limited to 'src/inc')
-rw-r--r--src/inc/eventtracebase.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/inc/eventtracebase.h b/src/inc/eventtracebase.h
index d19e3e97dc..344296f016 100644
--- a/src/inc/eventtracebase.h
+++ b/src/inc/eventtracebase.h
@@ -251,6 +251,42 @@ public:
#if defined(FEATURE_EVENT_TRACE)
+VOID EventPipeEtwCallbackDotNETRuntimeStress(
+ _In_ LPCGUID SourceId,
+ _In_ ULONG ControlCode,
+ _In_ UCHAR Level,
+ _In_ ULONGLONG MatchAnyKeyword,
+ _In_ ULONGLONG MatchAllKeyword,
+ _In_opt_ PVOID FilterData,
+ _Inout_opt_ PVOID CallbackContext);
+
+VOID EventPipeEtwCallbackDotNETRuntime(
+ _In_ LPCGUID SourceId,
+ _In_ ULONG ControlCode,
+ _In_ UCHAR Level,
+ _In_ ULONGLONG MatchAnyKeyword,
+ _In_ ULONGLONG MatchAllKeyword,
+ _In_opt_ PVOID FilterData,
+ _Inout_opt_ PVOID CallbackContext);
+
+VOID EventPipeEtwCallbackDotNETRuntimeRundown(
+ _In_ LPCGUID SourceId,
+ _In_ ULONG ControlCode,
+ _In_ UCHAR Level,
+ _In_ ULONGLONG MatchAnyKeyword,
+ _In_ ULONGLONG MatchAllKeyword,
+ _In_opt_ PVOID FilterData,
+ _Inout_opt_ PVOID CallbackContext);
+
+VOID EventPipeEtwCallbackDotNETRuntimePrivate(
+ _In_ LPCGUID SourceId,
+ _In_ ULONG ControlCode,
+ _In_ UCHAR Level,
+ _In_ ULONGLONG MatchAnyKeyword,
+ _In_ ULONGLONG MatchAllKeyword,
+ _In_opt_ PVOID FilterData,
+ _Inout_opt_ PVOID CallbackContext);
+
#ifndef FEATURE_PAL
// Callback and stack support
#if !defined(DONOT_DEFINE_ETW_CALLBACK) && !defined(DACCESS_COMPILE)