RFR 8207778: Add locking to ModuleEntry and PackageEntry tables
Harold David Seigel
harold.seigel at oracle.com
Thu Aug 9 19:10:12 UTC 2018
Thanks Lois!
I'll fix the copyright and look into renaming clean_module_package_info().
Harold
On 8/9/2018 3:06 PM, Lois Foltan wrote:
> On 8/9/2018 2:10 PM, Harold David Seigel wrote:
>
>> Hi,
>>
>> Please review this fix for JDK-8207778. Instead of adding additional
>> and unneeded locking to the ModuleEntry and PackageEntry tables, the
>> ClassLoaderDataGraph unloading code was restructured to simplify
>> changing SystemDictionary::do_unloading() to safely scan these tables
>> either by taking a lock or during a safepoint.
>>
>> Also, asserts for other tables scanned by
>> SystemDictionary::do_unloading() were changed from requiring a
>> safepoint to requiring either a lock or a safepoint.
>>
>> Open Webrev: http://cr.openjdk.java.net/~hseigel/bug_8207778/webrev/
>>
>> JBS Bug: https://bugs.openjdk.java.net/browse/JDK-8207778
>>
>> This fix was regression tested by running Mach5 tiers 1 and 2 tests
>> and builds on Linux-x64, Windows, and Mac OS X, running tiers 3-5
>> tests on Linux-x64, and by running JCK-11 API, Lang and VM tests on
>> Linux-x64.
>>
>> Thanks, Harold
>>
>
> Looks good. A couple of minor comments:
>
> - classLoaderData.cpp
> ClassLoaderDataGraph::clean_module_and_package_info does more than
> just purge module reads and package exports lists, it
> also removes entries in the dictionary of live class loaders. Maybe
> consider changing the name?
>
> - packageEntry.cpp
> needs copyright updated.
>
> Thanks,
> Lois
More information about the hotspot-runtime-dev
mailing list