RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required
zgu at redhat.com
Sun Jun 16 02:11:02 UTC 2019
On 6/15/19 9:26 PM, Zhengyu Gu wrote:
> On 6/15/19 3:35 PM, Roman Kennke wrote:
>> Can you give a little bit of explanation why workers need to be
>> suspended at safepoints for concurrent root processing?
> Concurrent processing uses workers and safepoint parallel task also
> utilizes workers, and shenandoah shares workers, so they can not overlap.
Should be more articulate. I don't mean GC safepoint parallel tasks,
which can not overlap. But the tasks, such as, heap iteration that might
Also, heap iteration walks CLDG at a safepoint, that may interfere CLDG
walking during concurrent CLDG evacuation.
>> Other than that, the patch looks good.
>>> Please review this patch that makes suspendible workers required,
>>> instead of optional, and obsoletes the corresponding flag.
>>> Suspendible workers are required for concurrent root processing.
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813
>>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html
>>> hotspot_gc_shenandoah (fastdebug and release)
More information about the hotspot-gc-dev