summaryrefslogtreecommitdiff
path: root/src/vm/eventpipeeventinstance.cpp
diff options
context:
space:
mode:
authorBrian Robbins <brianrob@microsoft.com>2018-01-29 16:57:01 -0800
committerGitHub <noreply@github.com>2018-01-29 16:57:01 -0800
commitad7c1e85fa95a92d5cc58b93b6ca9e2b77ec86b6 (patch)
treee762d6280e29cfc31b41904cc7ac7aeb075aff3a /src/vm/eventpipeeventinstance.cpp
parentf83908c15be840101772c68d87eb3d41ab2faf6f (diff)
downloadcoreclr-ad7c1e85fa95a92d5cc58b93b6ca9e2b77ec86b6.tar.gz
coreclr-ad7c1e85fa95a92d5cc58b93b6ca9e2b77ec86b6.tar.bz2
coreclr-ad7c1e85fa95a92d5cc58b93b6ca9e2b77ec86b6.zip
EventPipe: Don't Generate and Emit Stacks on Rundown (#16083)
Diffstat (limited to 'src/vm/eventpipeeventinstance.cpp')
-rw-r--r--src/vm/eventpipeeventinstance.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/vm/eventpipeeventinstance.cpp b/src/vm/eventpipeeventinstance.cpp
index 6cb7438639..51bd4ce8a7 100644
--- a/src/vm/eventpipeeventinstance.cpp
+++ b/src/vm/eventpipeeventinstance.cpp
@@ -3,6 +3,7 @@
// See the LICENSE file in the project root for more information.
#include "common.h"
+#include "eventpipeconfiguration.h"
#include "eventpipeeventinstance.h"
#include "eventpipejsonfile.h"
#include "fastserializer.h"
@@ -11,6 +12,7 @@
#ifdef FEATURE_PERFTRACING
EventPipeEventInstance::EventPipeEventInstance(
+ EventPipeSession &session,
EventPipeEvent &event,
DWORD threadID,
BYTE *pData,
@@ -53,7 +55,7 @@ EventPipeEventInstance::EventPipeEventInstance(
m_dataLength = length;
QueryPerformanceCounter(&m_timeStamp);
- if(event.NeedStack())
+ if(event.NeedStack() && !session.RundownEnabled())
{
EventPipe::WalkManagedStackForCurrentThread(m_stackContents);
}
@@ -221,8 +223,8 @@ bool EventPipeEventInstance::EnsureConsistency()
}
#endif // _DEBUG
-SampleProfilerEventInstance::SampleProfilerEventInstance(EventPipeEvent &event, Thread *pThread, BYTE *pData, unsigned int length)
- :EventPipeEventInstance(event, pThread->GetOSThreadId(), pData, length, NULL /* pActivityId */, NULL /* pRelatedActivityId */)
+SampleProfilerEventInstance::SampleProfilerEventInstance(EventPipeSession &session, EventPipeEvent &event, Thread *pThread, BYTE *pData, unsigned int length)
+ :EventPipeEventInstance(session, event, pThread->GetOSThreadId(), pData, length, NULL /* pActivityId */, NULL /* pRelatedActivityId */)
{
LIMITED_METHOD_CONTRACT;
}