RFR: 8210321: Create NO_KEEPALIVE CLD holder accessor

Erik Österlund erik.osterlund at oracle.com
Tue Sep 4 12:38:54 UTC 2018


Hi Coleen,

I specifically need this one for reading the holder without marking it, 
so that my GC code can subsequently mark it with either finalizable or 
strong marking, depending on whether we are marking the subgraph 
reachable from finalizers, or from strong roots concurrently. The 
klass_holder() accessor applies strong load barriers (as it is not 
AS_NO_KEEPALIVE).

Thanks,
/Erik

On 2018-09-04 14:29, coleen.phillimore at oracle.com wrote:
>
>
> On 9/4/18 8:02 AM, coleen.phillimore at oracle.com wrote:
>>
>> I thought the ClassLoaderData::is_alive() function would do this for 
>> you?
>
> Or can you call this new function from is_alive()?
> thanks
> Coleen
>
>> thanks,
>> Coleen
>>
>> On 9/3/18 10:38 AM, Erik Österlund wrote:
>>> Hi,
>>>
>>> In order to perform concurrent class unloading, ZGC needs a way to 
>>> peek the holder without keeping it alive.
>>>
>>> Webrev:
>>> http://cr.openjdk.java.net/~eosterlund/8210321/webrev.00/
>>>
>>> Bug:
>>> https://bugs.openjdk.java.net/browse/JDK-8210321
>>>
>>> Thanks,
>>> /Erik
>>
>



More information about the hotspot-runtime-dev mailing list