hg: jdk7/hotspot-gc/hotspot: 7039089: G1: changeset for 7037276 broke heap verification, and related cleanups

y.s.ramakrishna at oracle.com y.s.ramakrishna at oracle.com
Wed Apr 27 09:47:05 UTC 2011


Changeset: 1f4413413144
Author:    ysr
Date:      2011-04-26 21:17 -0700
URL:       http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/1f4413413144

7039089: G1: changeset for 7037276 broke heap verification, and related cleanups
Summary: In G1 heap verification, we no longer scan perm to G1-collected heap refs as part of process_strong_roots() but rather in a separate explicit oop iteration over the perm gen. This preserves the original perm card-marks. Added a new assertion in younger_refs_iterate() to catch a simple subcase where the user may have forgotten a prior save_marks() call, as happened in the case of G1's attempt to iterate perm to G1 refs when verifying the heap before exit. The assert was deliberately weakened for ParNew+CMS and will be fixed for that combination in a future CR. Also made some (non-G1) cleanups related to code and comments obsoleted by the migration of Symbols to the native heap.
Reviewed-by: iveresov, jmasa, tonyp

! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
! src/share/vm/memory/cardTableRS.cpp
! src/share/vm/memory/genCollectedHeap.hpp
! src/share/vm/memory/sharedHeap.cpp
! src/share/vm/memory/sharedHeap.hpp
! src/share/vm/runtime/vmThread.cpp




More information about the hotspot-gc-dev mailing list