RFR(s): 8198267: Allow GCId::current_raw() calls from non-NamedThreads
per.liden at oracle.com
Tue Feb 20 08:32:24 UTC 2018
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.
More information about the hotspot-gc-dev