RFR: 8215097: Do not create NonJavaThreads before BarrierSet

Kim Barrett kim.barrett at oracle.com
Mon Dec 10 21:38:03 UTC 2018

> On Dec 9, 2018, at 5:05 PM, David Holmes <david.holmes at oracle.com> wrote:
> Didn't realize you were going to tackle this so soon. I was just ironing out the wrinkles in 8214097 before sending it for review later today. :)

It turned out to be pretty easy.  And I thought there was some chance that it would help with 8214097.

> On 9/12/2018 6:30 pm, Kim Barrett wrote:
>> Please review this change to move the construction of some work gang
>> threads by G1 and CMS to after they've created the barrier set.  This
>> allows the removal of some bootstrapping code needed to support that
>> construction order.  There isn't any requirement for the old order,
>> it seems to just be a historical artifact.
>> CR:
>> https://bugs.openjdk.java.net/browse/JDK-8215097
>> Webrev:
>> http://cr.openjdk.java.net/~kbarrett/8215097/open.00/
> Moving the GC thread creation out of the heap constructor into the heap initialize function seems quite reasonable. Does ZGC already defer the thread creation? Will this impact the merge of Shenandoah?

As noted in the CR, ZGC already has the right ordering.  Later in this thread Roman says Shenandoah will also need to be changed.  That part is up to the Red Hat folks, of course.

> Everything else seems fine. (I'll be reworking the BarrierSet creation assertion as part of 8214097.)


Is there actually any further change to BarrierSet installation needed for 8214097?  I guess I will be finding out shortly, when your RFR comes out.

More information about the hotspot-dev mailing list