1.1 --- a/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp Thu Sep 30 12:15:13 2010 -0700 1.2 +++ b/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp Fri Oct 01 18:23:16 2010 -0700 1.3 @@ -303,9 +303,10 @@ 1.4 } 1.5 1.6 void ConcurrentMarkThread::sleepBeforeNextCycle() { 1.7 - clear_in_progress(); 1.8 // We join here because we don't want to do the "shouldConcurrentMark()" 1.9 // below while the world is otherwise stopped. 1.10 + assert(!in_progress(), "should have been cleared"); 1.11 + 1.12 MutexLockerEx x(CGC_lock, Mutex::_no_safepoint_check_flag); 1.13 while (!started()) { 1.14 CGC_lock->wait(Mutex::_no_safepoint_check_flag);