diff src/share/vm/gc_implementation/shared/concurrentGCThread.cpp @ 20646:4e4ebe50c8e3

8062036: ConcurrentMarkThread::slt may be invoked before ConcurrentMarkThread::makeSurrogateLockerThread causing intermittent crashes Summary: Suppress gc_alot during VM init, improve error for SLT uninitialized. Reviewed-by: jmasa, brutisso, tschatzl
author kbarrett
date Tue, 11 Nov 2014 13:39:00 -0500
parents 581e70386ec9
children 7848fc12602b
line wrap: on
line diff
--- a/src/share/vm/gc_implementation/shared/concurrentGCThread.cpp	Mon Nov 17 16:36:09 2014 +0000
+++ b/src/share/vm/gc_implementation/shared/concurrentGCThread.cpp	Tue Nov 11 13:39:00 2014 -0500
@@ -137,6 +137,13 @@
   return res;
 }
 
+void SurrogateLockerThread::report_missing_slt() {
+  vm_exit_during_initialization(
+    "GC before GC support fully initialized: "
+    "SLT is needed but has not yet been created.");
+  ShouldNotReachHere();
+}
+
 void SurrogateLockerThread::manipulatePLL(SLT_msg_type msg) {
   MutexLockerEx x(&_monitor, Mutex::_no_safepoint_check_flag);
   assert(_buffer == empty, "Should be empty");