RFR: 8068971: A heap region being cleared should not belong to the cset
bengt.rutisson at oracle.com
Fri Jan 16 08:29:52 UTC 2015
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).
> 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.
More information about the hotspot-gc-dev