hg: jdk7/hotspot-gc/hotspot: 6988458: G1: assert(mr.end() <= _cm->finger()) failed: otherwise the region shouldn't be on the stack

john.cuthbertson at oracle.com john.cuthbertson at oracle.com
Mon Oct 18 23:16:31 PDT 2010


Changeset: a5c514e74487
Author:    johnc
Date:      2010-10-18 15:01 -0700
URL:       http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/a5c514e74487

6988458: G1: assert(mr.end() <= _cm->finger()) failed: otherwise the region shouldn't be on the stack
Summary: The changes from 6941395 did not clear the CMTask::_aborted_region fields when concurrent marking aborted because of overflow. As a result, the next time around we could see a memory region whose start address was above the global finger and the assertion tripped. Moved the clearing of the aborted regions to ConcurrentMark::clear_marking_state, which is executed on all of the exit paths.
Reviewed-by: tonyp, ysr, jmasa

! src/share/vm/gc_implementation/g1/concurrentMark.cpp



More information about the hotspot-gc-dev mailing list