--- a/hotspot/src/share/vm/runtime/thread.cpp Tue Jun 17 11:18:10 2014 -0700
+++ b/hotspot/src/share/vm/runtime/thread.cpp Wed Jun 18 12:39:57 2014 -0700
@@ -3933,14 +3933,8 @@
// GC vm_operations can get caught at the safepoint, and the
// heap is unparseable if they are caught. Grab the Heap_lock
// to prevent this. The GC vm_operations will not be able to
- // queue until after the vm thread is dead.
- // After this point, we'll never emerge out of the safepoint before
- // the VM exits, so concurrent GC threads do not need to be explicitly
- // stopped; they remain inactive until the process exits.
- // Note: some concurrent G1 threads may be running during a safepoint,
- // but these will not be accessing the heap, just some G1-specific side
- // data structures that are not accessed by any other threads but them
- // after this point in a terminal safepoint.
+ // queue until after the vm thread is dead. After this point,
+ // we'll never emerge out of the safepoint before the VM exits.
MutexLocker ml(Heap_lock);