RFR: 8275800: Redefinition leaks MethodData::_extra_data_lock [v2]

Serguei Spitsyn sspitsyn at openjdk.java.net
Mon Oct 25 23:00:13 UTC 2021


On Mon, 25 Oct 2021 22:51:37 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> Is the suggestion to have a default parameter to free CHEAP structures that's false for deallocate_contents?
>> I'm not really sure it's an improvement because I have to have an extra parameter to Klass::release_C_heap_structures that's unused.
>
> That is one option but I was thinking perhaps remove `constants()->release_C_heap_structures()` from `instanceKlass::release_C_heap_structures()` and have the callers that should remove the CP call `ik->constants()->release_C_heap_structures()` directly?
> Or perhaps just change this comment:
> 
> 
>  // Release C heap allocated data that this points to, which includes
>   // reference counting symbol names.
>   release_C_heap_structures_internal();
> 
> 
> to 
> 
> ` // reference counting symbol names, but excludes the constant pool.`

Yes, I think that combining release_C_heap_structures and release_C_heap_structures_internal into single release_C_heap_structures with a default parameter will simplify code a little bit. But I'm not sure it is that important and would leave it for you to decide. :)

-------------

PR: https://git.openjdk.java.net/jdk/pull/6105


More information about the hotspot-dev mailing list