RFR: 8253481: Shenandoah: ShenandoahConcurrentRootScanner::oops_do() should always use _claim_strong for CLDClosure

Aleksey Shipilev shade at openjdk.java.net
Wed Sep 23 05:48:14 UTC 2020


On Tue, 22 Sep 2020 16:08:11 GMT, Zhengyu Gu <zgu at openjdk.org> wrote:

> _claim_none should only be used for single thread scanning, regardless concurrent or not.
> 
>  ShenandoahConcurrentRootScanner declares ShenandoahClassLoaderDataRoots multi-thread capable, so should always use
>  _claim_strong for scanning CLDG.
> 
> This is not a correctness bug. _claim_none results CLDG to be scanned by every worker.
> 
> Test:
>   - [x] hotspot_gc_shenandoah

Please see JDK-8246097 and JDK-8246101 for previous experiments in this area.

-------------

PR: https://git.openjdk.java.net/jdk/pull/304


More information about the shenandoah-dev mailing list