RFR 8204947: Port ShenandoahTaskTerminator to mainline and make it default
zgu at redhat.com
zgu at redhat.com
Wed Dec 5 17:40:28 UTC 2018
Hi Thomas,
Thanks for the updates.
On Wed, 2018-12-05 at 17:21 +0100, Thomas Schatzl wrote:
> Hi Zhengyu,
>
> On Fri, 2018-11-30 at 10:00 -0500, Zhengyu Gu wrote:
> > Hi Thomas,
> >
> > Thanks for testing and cleaning it up.
>
> I think that change is good.
>
> What I was trying to do was getting rid of the assignment operator in
> TaskTerminator, because of its semantics. It's a "move", not an
> assignment.
>
> So I created the change at
>
> http://cr.openjdk.java.net/~tschatzl/8204947/webrev.1_to_2
>
> which does that, and simply provides a reset_for_reuse() method which
> should do the same.
>
> However, when trying this out I rarely get an assertion failure in
> taskqueue.cpp:234.
Looks like that G1 concurrent mark can abort the termination (e.g.
G1CMTask::do_marking_step), which leaves the terminator into this
state?
Thanks,
-Zhengyu
>
> From what I understand, the effect of both variants should be the
> same,
> so I would like to investigate this further. So far it looks like a
> (pre-existing, benign?) G1 bug.
>
> Thanks,
> Thomas
>
>
More information about the hotspot-gc-dev
mailing list