RFR: 8275277: assert(dest_attr.is_in_cset() == (obj->forwardee() == obj)) failed: Only evac-failed objects must be in the collection set here but <addr> is not
Thomas Schatzl
tschatzl at openjdk.java.net
Sat Oct 16 11:09:52 UTC 2021
On Fri, 15 Oct 2021 12:20:01 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:
>> Hi all,
>>
>> can I have reviews for this fix of an incomplete assert?
>>
>> When checking whether the forwardee equals the object, we first need to check whether the object is already forwarded, otherwise we might get false positives. See CR for more details (example).
>>
>> Testing: gha, failing tests do not fail after 2k repetitions
>>
>> Thanks,
>> Thomas
>
> Ofc `obj` could be outside `cset`, and it's dangerous to call `forwardee` directly... Thank you for the analysis and the fix.
Thanks @albertnetymk @rkennke for your reviews.
-------------
PR: https://git.openjdk.java.net/jdk/pull/5965
More information about the hotspot-gc-dev
mailing list