RFR: 8068971: A heap region being cleared should not belong to the cset

Bengt Rutisson bengt.rutisson at oracle.com
Fri Jan 16 08:29:52 UTC 2015

Hi Erik,

On 2015-01-16 08:51, 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?

Looks good to me too modulo Thomas' error message comment. No need for a 
new webrev from my side.


> Thanks,
>    Thomas

More information about the hotspot-gc-dev mailing list