summaryrefslogtreecommitdiff
path: root/src/vm/finalizerthread.cpp
diff options
context:
space:
mode:
authorJonghyun Park <parjong@gmail.com>2016-06-07 22:31:59 +0900
committerJan Kotas <jkotas@microsoft.com>2016-06-07 06:31:59 -0700
commit964f88941efa9fc765be9a3b5f1573b90c3f490d (patch)
treee9a895380f7be4b942d814a6180dd5ba53591f9c /src/vm/finalizerthread.cpp
parentf5d09cd7d82549b258f224c36a095d62e06e1228 (diff)
downloadcoreclr-964f88941efa9fc765be9a3b5f1573b90c3f490d.tar.gz
coreclr-964f88941efa9fc765be9a3b5f1573b90c3f490d.tar.bz2
coreclr-964f88941efa9fc765be9a3b5f1573b90c3f490d.zip
Disable HeapDump on Linux if FEATURE_EVENT_TRACE is not set (#5550)
This commit tries to disable heap dump on linux if FEATURE_EVENT_TRACE is not set in order to fix #5546.
Diffstat (limited to 'src/vm/finalizerthread.cpp')
-rw-r--r--src/vm/finalizerthread.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/vm/finalizerthread.cpp b/src/vm/finalizerthread.cpp
index 5fe0b486cc..3960719c65 100644
--- a/src/vm/finalizerthread.cpp
+++ b/src/vm/finalizerthread.cpp
@@ -23,7 +23,7 @@
BOOL FinalizerThread::fRunFinalizersOnUnload = FALSE;
BOOL FinalizerThread::fQuitFinalizer = FALSE;
-#if defined(__linux__)
+#if defined(__linux__) && defined(FEATURE_EVENT_TRACE)
#define LINUX_HEAP_DUMP_TIME_OUT 10000
extern bool s_forcedGCInProgress;
@@ -519,7 +519,7 @@ void FinalizerThread::WaitForFinalizerEvent (CLREvent *event)
cEventsForWait, // # objects to wait on
&(MHandles[uiEventIndexOffsetForWait]), // array of objects to wait on
FALSE, // bWaitAll == FALSE, so wait for first signal
-#if defined(__linux__)
+#if defined(__linux__) && defined(FEATURE_EVENT_TRACE)
LINUX_HEAP_DUMP_TIME_OUT,
#else
INFINITE, // timeout
@@ -554,7 +554,7 @@ void FinalizerThread::WaitForFinalizerEvent (CLREvent *event)
ProfilingAPIAttachDetach::ProcessSignaledAttachEvent();
break;
#endif // FEATURE_PROFAPI_ATTACH_DETACH
-#if defined(__linux__)
+#if defined(__linux__) && defined(FEATURE_EVENT_TRACE)
case (WAIT_TIMEOUT + kLowMemoryNotification):
case (WAIT_TIMEOUT + kFinalizer):
if (g_TriggerHeapDump)
@@ -574,7 +574,7 @@ void FinalizerThread::WaitForFinalizerEvent (CLREvent *event)
else {
static LONG sLastLowMemoryFromHost = 0;
while (1) {
-#if defined(__linux__)
+#if defined(__linux__) && defined(FEATURE_EVENT_TRACE)
DWORD timeout = LINUX_HEAP_DUMP_TIME_OUT;
#else
DWORD timeout = INFINITE;
@@ -613,7 +613,7 @@ void FinalizerThread::WaitForFinalizerEvent (CLREvent *event)
case (WAIT_ABANDONED):
return;
case (WAIT_TIMEOUT):
-#if defined(__linux__)
+#if defined(__linux__) && defined(FEATURE_EVENT_TRACE)
if (g_TriggerHeapDump)
{
return;
@@ -672,7 +672,7 @@ VOID FinalizerThread::FinalizerThreadWorker(void *args)
WaitForFinalizerEvent (hEventFinalizer);
-#if defined(__linux__)
+#if defined(__linux__) && defined(FEATURE_EVENT_TRACE)
if (g_TriggerHeapDump && (CLRGetTickCount64() > (LastHeapDumpTime + LINUX_HEAP_DUMP_TIME_OUT)))
{
s_forcedGCInProgress = true;