RFR(s): 8198267: Allow GCId::current_raw() calls from non-NamedThreads

Kim Barrett kim.barrett at oracle.com
Tue Feb 20 16:03:28 UTC 2018


> On Feb 20, 2018, at 3:32 AM, Per Liden <per.liden at oracle.com> wrote:
> 
> Hi Kim,
> 
> On 02/20/2018 08:04 AM, Kim Barrett wrote:
>>> On Feb 20, 2018, at 1:32 AM, Kim Barrett <kim.barrett at oracle.com> wrote:
>>> The inability to call GCId::current_raw from non-NamedThreads is what
>>> led me to jump through some hoops in the gtests for OopStorage,
>>> sometimes needing to transition a thread from native to VM.
>> Looking at the test code more carefully, I think the transition from native to VM was to
>> deal with some assert_in_safepoints in some places in OopStorage’s implementation.
>> The GCId issue seems to have been dealt with by explicitly passing GCId::undefined() to
>> the AbstractGangTask constructor.  The proposed default behavior would work for the
>> oopstorage gtest, but the test still seems like it needs updating.
> 
> Ah, the gtest fix was incorrectly included in the followup patch "8198369: Clean up GCId and GCIdMark", but it should be part of this patch of course. Will fix. I'll also make the constructor explicit.
> 
> About the removal of Universe::is_fully_initialized() in G1PretouchTask. I came to the conclusion that it's obsolete/unnecessary.
> 
> Incremental: http://cr.openjdk.java.net/~pliden/8198267/webrev.0vs1/
> Full: http://cr.openjdk.java.net/~pliden/8198267/webrev.1/
> 
> /Per

Looks good.



More information about the hotspot-gc-dev mailing list