From: Evgeny Pavlov Date: Wed, 27 Jul 2016 13:27:17 +0000 (+0300) Subject: Add flag to check re-entrancy of JIT notification X-Git-Tag: accepted/tizen/base/20180629.140029~3943^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=27e570de343590fb99a1d9862668ab13843e42be;p=platform%2Fupstream%2Fcoreclr.git Add flag to check re-entrancy of JIT notification --- diff --git a/src/vm/util.cpp b/src/vm/util.cpp index 703564e..3ce26d6 100644 --- a/src/vm/util.cpp +++ b/src/vm/util.cpp @@ -3361,6 +3361,7 @@ void InitializeClrNotifications() #if defined(FEATURE_GDBJIT) #include "gdbjit.h" +__declspec(thread) bool tls_isSymReaderInProgress = false; #endif // FEATURE_GDBJIT // called from the runtime @@ -3375,7 +3376,12 @@ void DACNotify::DoJITNotification(MethodDesc *MethodDescPtr) } CONTRACTL_END; #if defined(FEATURE_GDBJIT) && defined(FEATURE_PAL) && !defined(CROSSGEN_COMPILE) - NotifyGdb::MethodCompiled(MethodDescPtr); + if(!tls_isSymReaderInProgress) + { + tls_isSymReaderInProgress = true; + NotifyGdb::MethodCompiled(MethodDescPtr); + tls_isSymReaderInProgress = false; + } #endif TADDR Args[2] = { JIT_NOTIFICATION, (TADDR) MethodDescPtr }; DACNotifyExceptionHelper(Args, 2);