From 81c4aa5c13e38b701a0ace0765ab153b750a1e7e Mon Sep 17 00:00:00 2001 Date: Tue, 25 Jun 2019 10:06:19 +0000 Subject: [PATCH] backport of JDK-8141356 Summary: Explicitly stop CMS threads during VM termination LLT: Bug url: https://bugs.openjdk.java.net/browse/JDK-8141356 --- hotspot/src/share/vm/memory/genCollectedHeap.cpp | 8 ++++++++ hotspot/src/share/vm/memory/genCollectedHeap.hpp | 3 +++ 2 files changed, 11 insertions(+) diff --git a/hotspot/src/share/vm/memory/genCollectedHeap.cpp b/hotspot/src/share/vm/memory/genCollectedHeap.cpp index f7c9591d90..eeb56f02a1 100644 --- a/hotspot/src/share/vm/memory/genCollectedHeap.cpp +++ b/hotspot/src/share/vm/memory/genCollectedHeap.cpp @@ -1408,3 +1408,11 @@ jlong GenCollectedHeap::millis_since_last_gc() { } return retVal; } + +void GenCollectedHeap::stop() { +#if INCLUDE_ALL_GCS + if (UseConcMarkSweepGC) { + ConcurrentMarkSweepThread::stop(); + } +#endif +} diff --git a/hotspot/src/share/vm/memory/genCollectedHeap.hpp b/hotspot/src/share/vm/memory/genCollectedHeap.hpp index 58786eded2..c3eb0db064 100644 --- a/hotspot/src/share/vm/memory/genCollectedHeap.hpp +++ b/hotspot/src/share/vm/memory/genCollectedHeap.hpp @@ -538,6 +538,9 @@ private: protected: virtual void gc_prologue(bool full); virtual void gc_epilogue(bool full); + +public: + void stop(); }; #endif // SHARE_VM_MEMORY_GENCOLLECTEDHEAP_HPP -- 2.19.0-rc1