RFR (S) 8231198: Shenandoah: heap walking should visit all roots most of the time

Zhengyu Gu zgu at redhat.com
Thu Sep 19 15:03:54 UTC 2019



On 9/19/19 10:54 AM, Aleksey Shipilev wrote:
> Bug:
>    https://bugs.openjdk.java.net/browse/JDK-8231198
> Fix:
>    https://cr.openjdk.java.net/~shade/8231198/webrev.01/
> This reliably reproduces with vmTestbase_nsk_jvmti. We have to match the objects that we walk with
> what JVMTI is doing there. Unfortunately, our current code sometimes discovers that unload_classes
> is true, and so skips some weak roots, while JVMTI visits them. As the result, the marks for objects
> in those weak roots is never reset, and we crash later. The easy way out is to avoid scanning weak
> roots only when it matters: during evacuation.
> Testing: hotspot_gc_shenandoah, vmTestbase_nsk_jvmti

More information about the hotspot-gc-dev mailing list