hg: jdk7/hotspot-gc/hotspot: 7000559: G1: assertion failure !outer || (full_collections_started == _full_collections_completed + 1)

tony.printezis at oracle.com tony.printezis at oracle.com
Wed Dec 15 06:52:04 UTC 2010

Changeset: fb712ff22571
Author:    tonyp
Date:      2010-12-14 16:19 -0500
URL:       http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/fb712ff22571

7000559: G1: assertion failure !outer || (full_collections_started == _full_collections_completed + 1)
Summary: The concurrent marking thread can complete its operation and increment the full GC counter during a Full GC. This causes the nesting of increments to the start and end of Full GCs that we are expecting to be wrong. the fix is for the marking thread to join the suspendible thread set before incrementing the counter so that it's blocked until the Full GC (or any other safepoint) is finished. The change also includes some minor code cleanup (I renamed a parameter).
Reviewed-by: brutisso, ysr

! src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp
! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp

More information about the hotspot-gc-dev mailing list