RFR: 8214231: Allow concurrent cleaning of TypeStackSlotEntries and ReturnTypeEntry
Erik Österlund
erik.osterlund at oracle.com
Fri Nov 30 15:47:16 UTC 2018
Hi Coleen,
Thanks for the review!
/Erik
On 2018-11-30 16:37, coleen.phillimore at oracle.com wrote:
>
> This looks good to me also.
> Thanks,
> Coleen
>
> On 11/23/18 7:45 AM, Robbin Ehn wrote:
>> Hi Erik,
>>
>> This is a reasonable approach, thanks!
>>
>> /Robbin
>>
>> On 2018-11-22 14:59, Erik Österlund wrote:
>>> Hi,
>>>
>>> The TypeStackSlotEntries and ReturnTypeEntry contain weak metadata
>>> links that must be cleaned during class unloading. With concurrent
>>> class unloading, their ci counterparts must be protected from
>>> accessing unloading metadata.
>>>
>>> In particular, ciTypeStackSlotEntries and ciReturnTypeEntry
>>> counterparts copy the raw data from TypeStackSlotEntries and
>>> ReturnTypeEntry of the MDOs, and are subsequently queried by the
>>> compiler. The copied data may contain stale metadata. By checking for
>>> unloading metadata and replacing it with NULL during creation of the
>>> ci variants from their raw counterparts, we protect the compiler from
>>> seeing stale metadata that is being unloaded, before the GC has
>>> gotten around to cleaning up the MDOs.
>>>
>>> Webrev:
>>> http://cr.openjdk.java.net/~eosterlund/8214231/webrev.00/
>>>
>>> Bug:
>>> https://bugs.openjdk.java.net/browse/JDK-8214231
>>>
>>> Thanks,
>>> /Erik
>
More information about the hotspot-dev
mailing list