RFR: 8264126: Remove TRAPS/THREAD parameter for class loading functions [v4]
David Holmes
dholmes at openjdk.java.net
Thu Mar 25 22:29:26 UTC 2021
On Thu, 25 Mar 2021 13:06:00 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:
>> find_constrained_instance_or_array_klass only passes THREAD so that it can be used in a MutexLocker for SystemDictionary_lock. This can use the MutexLocker that gets Thread::current() without any harm to performance.
>>
>> The other functions add_loader_constraint, record_linking_constraints, and check_signature_loaders fall out from that.
>>
>> check_signature_loaders should throw an exception but it unfortunately makes the caller construct the exception message so it doesn't.
>>
>> Also: is_shared_class_visible{_impl}
>>
>> Tested with tier1 on 4 Oracle platforms (in progress)
>
> Coleen Phillimore has updated the pull request incrementally with one additional commit since the last revision:
>
> fix broken logic in systemDictionaryShared.
src/hotspot/share/classfile/systemDictionaryShared.cpp line 1864:
> 1862: }
> 1863:
> 1864: if (DynamicDumpSharedSpaces && Thread::current()->is_VM_thread()) {
This is still a functional change. If there is a bug and we get here in the VMThread when DynamicDumpSharedSpaces is not set then we will no longer immediately return.
-------------
PR: https://git.openjdk.java.net/jdk/pull/3176
More information about the hotspot-dev
mailing list