RFR(S) 228777: Shenandoah: Cleanup STW weak root processing
Zhengyu Gu
zgu at redhat.com
Tue Jul 30 17:26:47 UTC 2019
On 7/30/19 12:50 PM, Roman Kennke wrote:
> I am not sure about this. If final-mark could not finish to pre-evacuate
> all roots we might have from-space refs there. Or does the OOM-protocol
> ensure that any ref should be updated correctly? We need to be careful
> here. Better safe than sorry.
If pre-evacuation fails, it runs degenerated GC cycle and roots are
updated in final_updaterefs().
We do have no-forwarded assertion in place, should catch the problem if
otherwise.
Thanks,
-Zhengyu
>
> Roman
>
>
>> Shenandoah pre-evacuates or updates weak roots at STW pauses. Therefore,
>> weak roots should not have forwarded references during mark phase.
>>
>> Current has_forwarded_objects() branch does not break things, but does
>> unncessary works, let's prune it.
>>
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8228777
>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8228777/webrev.00/
>>
>> Test:
>> hotspot_gc_shenandoah (fastdebug and release)
>>
>> Thanks,
>>
>> -Zhengyu
>
More information about the hotspot-gc-dev
mailing list