RFR 8215220: Simplify Shenandoah task termination in aborted paths

zgu at redhat.com zgu at redhat.com
Thu Dec 13 14:58:14 UTC 2018


On Thu, 2018-12-13 at 15:34 +0100, Roman Kennke wrote:
> Ok! Thanks,
> Roman

Thanks for reviewing. Pushed, so I can not credit you as a reviewer.

-Zhengyu


> 
> > 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