RFR: 8309603: Deallocate hashtables in ClassLoaderData::unload [v4]
Coleen Phillimore
coleenp at openjdk.org
Thu Jul 27 19:28:42 UTC 2023
On Tue, 25 Jul 2023 00:46:08 GMT, Chad Rakoczy <duke at openjdk.org> wrote:
>> [JDK-8309603](https://bugs.openjdk.org/browse/JDK-8309603)
>>
>> Memory is released in `ClassLoaderdata::~ClassLoaderData` for the dictionary and module hashtables but they could be deleted earlier in `ClassLoaderdata::unload`. Since we're unloading the class loader is no longer being used for lookup.
>>
>> Additional testing:
>> - [x] Linux x86_64 fastdebug `tier2`
>> - [x] Linux x86_64 release `tier2`
>> - [x] Linux x86_64 fastdebug `gtest:all`
>> - [x] Linux x86_64 release `gtest:all`
>> - [x] Linux x86_64 fastdebug `test/hotspot/jtreg/runtime`
>> - [x] Linux x86_64 release `test/hotspot/jtreg/runtime`
>
> Chad Rakoczy has updated the pull request incrementally with one additional commit since the last revision:
>
> Unload packages in unload
This looks good. While it's nicer to remove these in the destructor, this releases memory more eagerly for class unloading without waiting for a safepoint.
-------------
Marked as reviewed by coleenp (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/14820#pullrequestreview-1550607987
More information about the hotspot-runtime-dev
mailing list