summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMukul Sabharwal <mjsabby@gmail.com>2017-05-10 18:37:58 -0700
committerMukul Sabharwal <mjsabby@gmail.com>2017-05-10 18:37:58 -0700
commit095c7fec7fc928ceff364c1eaa86386f26b53c93 (patch)
treef23e566f92c3a4fe377abd414a6b91c73f650c1b
parent02b8f503523f09a9b3668cabd9473fe810f66389 (diff)
downloadcoreclr-095c7fec7fc928ceff364c1eaa86386f26b53c93.tar.gz
coreclr-095c7fec7fc928ceff364c1eaa86386f26b53c93.tar.bz2
coreclr-095c7fec7fc928ceff364c1eaa86386f26b53c93.zip
Remove EventPipeProfiler due to time constraints
-rw-r--r--src/inc/corprof.idl17
-rw-r--r--src/inc/profilepriv.inl15
-rw-r--r--src/vm/CMakeLists.txt1
-rw-r--r--src/vm/eetoprofinterfaceimpl.cpp31
-rw-r--r--src/vm/eetoprofinterfaceimpl.h15
-rw-r--r--src/vm/eventpipe.cpp27
-rw-r--r--src/vm/eventpipe.h4
-rw-r--r--src/vm/eventpipeeventinstance.cpp14
-rw-r--r--src/vm/eventpipeeventinstance.h6
-rw-r--r--src/vm/eventpipeprofilerapi.cpp41
-rw-r--r--src/vm/eventpipeprofilerapi.h30
11 files changed, 2 insertions, 199 deletions
diff --git a/src/inc/corprof.idl b/src/inc/corprof.idl
index cbea5c0d4a..db67b3c6bb 100644
--- a/src/inc/corprof.idl
+++ b/src/inc/corprof.idl
@@ -621,13 +621,11 @@ typedef enum
COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED = 0x00000002,
- COR_PRF_HIGH_MONITOR_EVENT_PIPE = 0x00000004,
-
- COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS = 0x00000008,
+ COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS = 0x00000004,
COR_PRF_HIGH_REQUIRE_PROFILE_IMAGE = 0,
- COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH = COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED | COR_PRF_HIGH_MONITOR_EVENT_PIPE | COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS,
+ COR_PRF_HIGH_ALLOWABLE_AFTER_ATTACH = COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED | COR_PRF_HIGH_MONITOR_DYNAMIC_FUNCTION_UNLOADS,
// MONITOR_IMMUTABLE represents all flags that may only be set during initialization.
// Trying to change any of these flags elsewhere will result in a
@@ -2424,17 +2422,6 @@ interface ICorProfilerCallback9 : ICorProfilerCallback8
// and subsequently unloaded.
HRESULT DynamicMethodUnloaded([in] FunctionID functionId);
-
- HRESULT EventPipeEventDelivered(
- [in] REFGUID eventGuid,
- [in] DWORD eventId,
- [in] DWORD eventVersion,
- [in] DWORD eventThreadId,
- [in] LARGE_INTEGER eventTimestamp,
- [in] ULONG cbEventData,
- [in, size_is(cbEventData)] LPCBYTE eventData,
- [in] ULONG numStackFrames,
- [in, length_is(numStackFrames)] UINT_PTR stackFrames[]);
}
diff --git a/src/inc/profilepriv.inl b/src/inc/profilepriv.inl
index e863fc760d..d334e1086b 100644
--- a/src/inc/profilepriv.inl
+++ b/src/inc/profilepriv.inl
@@ -736,21 +736,6 @@ inline BOOL CORProfilerInMemorySymbolsUpdatesEnabled()
((&g_profControlBlock)->dwEventMaskHigh & COR_PRF_HIGH_IN_MEMORY_SYMBOLS_UPDATED));
}
-inline BOOL CORProfilerIsMonitoringEventPipe()
-{
- CONTRACTL
- {
- NOTHROW;
- GC_NOTRIGGER;
- CANNOT_TAKE_LOCK;
- SO_NOT_MAINLINE;
- }
- CONTRACTL_END;
-
- return (CORProfilerPresent() &&
- ((&g_profControlBlock)->dwEventMaskHigh & COR_PRF_HIGH_MONITOR_EVENT_PIPE));
-}
-
inline BOOL CORProfilerIsMonitoringDynamicFunctionUnloads()
{
CONTRACTL
diff --git a/src/vm/CMakeLists.txt b/src/vm/CMakeLists.txt
index cf088d6d26..556eb0e93a 100644
--- a/src/vm/CMakeLists.txt
+++ b/src/vm/CMakeLists.txt
@@ -169,7 +169,6 @@ set(VM_SOURCES_WKS
eventpipeeventinstance.cpp
eventpipefile.cpp
eventpipejsonfile.cpp
- eventpipeprofilerapi.cpp
eventpipeprovider.cpp
eventstore.cpp
fastserializer.cpp
diff --git a/src/vm/eetoprofinterfaceimpl.cpp b/src/vm/eetoprofinterfaceimpl.cpp
index 37dfcfb61d..75f4a02af2 100644
--- a/src/vm/eetoprofinterfaceimpl.cpp
+++ b/src/vm/eetoprofinterfaceimpl.cpp
@@ -6390,36 +6390,5 @@ HRESULT EEToProfInterfaceImpl::GetAssemblyReferences(LPCWSTR wszAssemblyPath, IA
return hr;
}
-HRESULT EEToProfInterfaceImpl::EventPipeEventDelivered(
- REFGUID eventGuid,
- DWORD eventId,
- DWORD eventVersion,
- DWORD eventThreadId,
- LARGE_INTEGER eventTimestamp,
- ULONG cbEventData,
- LPCBYTE eventData,
- ULONG numStackFrames,
- UINT_PTR stackFrames[])
-{
- CONTRACTL
- {
- THROWS;
- GC_TRIGGERS;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- CLR_TO_PROFILER_ENTRYPOINT((LF_CORPROF,
- LL_INFO1000,
- "**PROF: EventPipeEventDelivered.\n"));
-
- if (m_pCallback9 == NULL)
- {
- return S_OK;
- }
-
- return m_pCallback9->EventPipeEventDelivered(eventGuid, eventId, eventVersion, eventThreadId, eventTimestamp, cbEventData, eventData, numStackFrames, stackFrames);
-}
-
#endif // PROFILING_SUPPORTED
diff --git a/src/vm/eetoprofinterfaceimpl.h b/src/vm/eetoprofinterfaceimpl.h
index ed190bc810..63d1cadfbb 100644
--- a/src/vm/eetoprofinterfaceimpl.h
+++ b/src/vm/eetoprofinterfaceimpl.h
@@ -483,21 +483,6 @@ public:
HRESULT GetAssemblyReferences(LPCWSTR wszAssemblyPath, IAssemblyBindingClosure * pClosure, AssemblyReferenceClosureWalkContextForProfAPI * pContext);
- //
- // Event Pipe
- //
-
- HRESULT EventPipeEventDelivered(
- REFGUID eventGuid,
- DWORD eventId,
- DWORD eventVersion,
- DWORD eventThreadId,
- LARGE_INTEGER eventTimestamp,
- ULONG cbEventData,
- LPCBYTE eventData,
- ULONG numStackFrames,
- UINT_PTR stackFrames[]);
-
private:
//
diff --git a/src/vm/eventpipe.cpp b/src/vm/eventpipe.cpp
index 27fa1ab844..8ea3f0867e 100644
--- a/src/vm/eventpipe.cpp
+++ b/src/vm/eventpipe.cpp
@@ -9,11 +9,6 @@
#include "eventpipefile.h"
#include "eventpipeprovider.h"
#include "eventpipejsonfile.h"
-
-#ifdef PROFILING_SUPPORTED
-#include "eventpipeprofilerapi.h"
-#endif
-
#include "sampleprofiler.h"
#ifdef FEATURE_PAL
@@ -28,10 +23,6 @@ EventPipeConfiguration* EventPipe::s_pConfig = NULL;
EventPipeFile* EventPipe::s_pFile = NULL;
EventPipeJsonFile* EventPipe::s_pJsonFile = NULL;
-#ifdef PROFILING_SUPPORTED
-EventPipeProfilerApi* EventPipe::s_pProfilerApi = NULL;
-#endif
-
#ifdef FEATURE_PAL
// This function is auto-generated from /src/scripts/genEventPipe.py
extern "C" void InitProvidersAndEvents();
@@ -108,10 +99,6 @@ void EventPipe::Enable()
eventPipeFileOutputPath.Printf("Process-%d.netperf", GetCurrentProcessId());
s_pFile = new EventPipeFile(eventPipeFileOutputPath);
-#ifdef PROFILING_SUPPORTED
- s_pProfilerApi = new EventPipeProfilerApi();
-#endif
-
if(CLRConfig::GetConfigValue(CLRConfig::INTERNAL_PerformanceTracing) == 2)
{
// File placed in current working directory.
@@ -200,12 +187,6 @@ void EventPipe::WriteEvent(EventPipeEvent &event, BYTE *pData, unsigned int leng
_ASSERTE(s_pFile != NULL);
s_pFile->WriteEvent(instance);
-#ifdef PROFILING_SUPPORTED
- // Write to the EventPipeProfilerApi.
- _ASSERTE(s_pProfilerApi != NULL);
- s_pProfilerApi->WriteEvent(instance);
-#endif
-
// Write to the EventPipeJsonFile if it exists.
if(s_pJsonFile != NULL)
{
@@ -229,14 +210,6 @@ void EventPipe::WriteSampleProfileEvent(SampleProfilerEventInstance &instance)
s_pFile->WriteEvent(instance);
}
-#ifdef PROFILING_SUPPORTED
- // Write to the EventPipeProfilerApi.
- if(s_pProfilerApi != NULL)
- {
- s_pProfilerApi->WriteEvent(instance);
- }
-#endif
-
// Write to the EventPipeJsonFile if it exists.
if(s_pJsonFile != NULL)
{
diff --git a/src/vm/eventpipe.h b/src/vm/eventpipe.h
index 7b3fa228c4..225c1987c0 100644
--- a/src/vm/eventpipe.h
+++ b/src/vm/eventpipe.h
@@ -15,10 +15,6 @@ class EventPipeEvent;
class EventPipeFile;
class EventPipeJsonFile;
-#ifdef PROFILING_SUPPORTED
-class EventPipeProfilerApi;
-#endif
-
class MethodDesc;
class SampleProfilerEventInstance;
diff --git a/src/vm/eventpipeeventinstance.cpp b/src/vm/eventpipeeventinstance.cpp
index 1b903b4cc2..2bf500be70 100644
--- a/src/vm/eventpipeeventinstance.cpp
+++ b/src/vm/eventpipeeventinstance.cpp
@@ -64,20 +64,6 @@ unsigned int EventPipeEventInstance::GetLength() const
return m_dataLength;
}
-unsigned int EventPipeEventInstance::GetThreadId() const
-{
- LIMITED_METHOD_CONTRACT;
-
- return m_threadID;
-}
-
-LARGE_INTEGER EventPipeEventInstance::GetTimestamp() const
-{
- LIMITED_METHOD_CONTRACT;
-
- return m_timeStamp;
-}
-
void EventPipeEventInstance::FastSerialize(FastSerializer *pSerializer, StreamLabel metadataLabel)
{
CONTRACTL
diff --git a/src/vm/eventpipeeventinstance.h b/src/vm/eventpipeeventinstance.h
index 770a9c63b3..84ad566489 100644
--- a/src/vm/eventpipeeventinstance.h
+++ b/src/vm/eventpipeeventinstance.h
@@ -31,12 +31,6 @@ public:
// Get the length of the data.
unsigned int GetLength() const;
- // Get the thread id of the event.
- unsigned int GetThreadId() const;
-
- // Get the timestamp of the event.
- LARGE_INTEGER GetTimestamp() const;
-
// Serialize this object using FastSerialization.
void FastSerialize(FastSerializer *pSerializer, StreamLabel metadataLabel);
diff --git a/src/vm/eventpipeprofilerapi.cpp b/src/vm/eventpipeprofilerapi.cpp
deleted file mode 100644
index 047f616d35..0000000000
--- a/src/vm/eventpipeprofilerapi.cpp
+++ /dev/null
@@ -1,41 +0,0 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-// See the LICENSE file in the project root for more information.
-
-#include "common.h"
-#include "eventpipeprofilerapi.h"
-
-#ifdef FEATURE_PERFTRACING
-
-#ifdef PROFILING_SUPPORTED
-
-void EventPipeProfilerApi::WriteEvent(EventPipeEventInstance &instance)
-{
- CONTRACTL
- {
- THROWS;
- GC_TRIGGERS;
- MODE_ANY;
- }
- CONTRACTL_END;
-
- auto event = instance.GetEvent();
- auto stackContents = instance.GetStack();
-
- BEGIN_PIN_PROFILER(CORProfilerIsMonitoringEventPipe());
- g_profControlBlock.pProfInterface->EventPipeEventDelivered(
- event->GetProvider()->GetProviderID(),
- event->GetEventID(),
- event->GetEventVersion(),
- instance.GetThreadId(),
- instance.GetTimestamp(),
- instance.GetLength(),
- instance.GetData(),
- stackContents->GetLength(),
- reinterpret_cast<UINT_PTR*>(stackContents->GetPointer()));
- END_PIN_PROFILER();
-}
-
-#endif // PROFILING_SUPPORTED
-
-#endif // FEATURE_PERFTRACING
diff --git a/src/vm/eventpipeprofilerapi.h b/src/vm/eventpipeprofilerapi.h
deleted file mode 100644
index 476d8081f6..0000000000
--- a/src/vm/eventpipeprofilerapi.h
+++ /dev/null
@@ -1,30 +0,0 @@
-// Licensed to the .NET Foundation under one or more agreements.
-// The .NET Foundation licenses this file to you under the MIT license.
-// See the LICENSE file in the project root for more information.
-
-#ifndef __EVENTPIPE_PROFILERAPI_H__
-#define __EVENTPIPE_PROFILERAPI_H__
-
-#ifdef FEATURE_PERFTRACING
-
-#ifdef PROFILING_SUPPORTED
-
-#include "eeprofinterfaces.h"
-#include "eventpipe.h"
-#include "eventpipeeventinstance.h"
-
-class EventPipeProfilerApi
-{
- public:
- EventPipeProfilerApi() {};
- ~EventPipeProfilerApi() {};
-
- // Write an event to the profiler api.
- void WriteEvent(EventPipeEventInstance &instance);
-};
-
-#endif // PROFILING_SUPPORTED
-
-#endif // FEATURE_PERFTRACING
-
-#endif // __EVENTPIPE_PROFILERAPI_H__