RFR: 8068971: A heap region being cleared should not belong to the cset
erik.helin at oracle.com
Fri Jan 16 10:53:02 UTC 2015
On 2015-01-16, Thomas Schatzl wrote:
> Hi Erik,
> On Fri, 2015-01-16 at 08:47 +0100, Erik Helin wrote:
> > Hi all,
> > this tiny patch ensures that a heap region being cleared via
> > HeapRegion::hr_clear does not belong to the collection set. This has
> > never been the case, because we are only clearing heap regions upon
> > initialization (and then they don't belong to any cset) or from the
> > cleanup phase of the concurrent marking. The cleanup phase will only
> > call hr_clear on an old heap region, and an old heap region is only part
> > of the cset during a mixed GC (which can't happen concurrently with the
> > cleanup phase of concurrent marking).
> > Webrev:
> > http://cr.openjdk.java.net/~ehelin/8068971/webrev.00/
> could you change the assert to something like:
> + assert(!_in_collection_set,
> + err_msg("Should not clear heap region %u in the collection set", hrm_index()));
> to improve the error message?
Thanks, good suggestion! I will update the patch before pushing.
More information about the hotspot-gc-dev