RFR: 8214231: Allow concurrent cleaning of TypeStackSlotEntries and ReturnTypeEntry
robbin.ehn at oracle.com
Fri Nov 23 12:45:00 UTC 2018
This is a reasonable approach, thanks!
On 2018-11-22 14:59, Erik Österlund wrote:
> 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.
More information about the hotspot-dev