RFR 8215220: Simplify Shenandoah task termination in aborted paths
zgu at redhat.com
zgu at redhat.com
Wed Dec 12 12:46:23 UTC 2018
Oops, webrev was wrong.
Corrected: http://cr.openjdk.java.net/~zgu/JDK-8215220/webrev.01/
Thanks,
-Zhengyu
On Tue, 2018-12-11 at 10:41 -0500, zgu at redhat.com wrote:
> During upstreaming ShenandoahTaskTermination and investigating
> inconsistent termination states reported by Thomas Schatzl, I believe
> we can simplify our termination logic.
>
> First, no every worker has to offer termination in aborted paths.
> Because, once the termination is aborted, it stays aborted until
> workers rendezvous, so workers that offered termination will see
> aborted condition sooner or later. Even some of workers terminated in
> succeeded state, it still does not matter, since we re-check aborted
> flag after workers rendezvous.
>
> Second, JDK-8215047 does not affect this patch, since Shenandoah do
> not
> reuse terminator. (I tested this patch with JDK-8215047 fixes for
> OWST
> terminator, it passed tier1, 2, 3, shenandoah)
>
>
> But this patch is quite dramatic, let's bake it for a day or two in
> Shenandoah repo before upstreaming.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8215220
> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8215220/webrev.00/
>
> Test:
> tier1, 2, 3 gc_shenandoah
>
> Thanks,
>
> -Zhengyu
More information about the shenandoah-dev
mailing list