RFR(S) 8240481: Remove CDS usage of InstanceKlass::is_in_error_state

Calvin Cheung calvin.cheung at oracle.com
Wed Mar 4 21:47:37 UTC 2020


Hi Ioi,

Thanks for your review.

I've updated systemDictionaryShared.cpp with your suggestions:

http://cr.openjdk.java.net/~ccheung/jdk15/8240481/webrev.01/src/hotspot/share/classfile/systemDictionaryShared.cpp.sdiff.html

I also added 2 asserts to the following:

1207   if (_dumptime_table == NULL) return false;

It now becomes:

1211   if (_dumptime_table == NULL) {
1212     assert(DynamicDumpSharedSpaces, "sanity");
1213     assert(ik->is_shared(), "must be a shared class in the static 
archive");
1214     return false;
1215   }

thanks,

Calvin

On 3/4/20 10:15 AM, Ioi Lam wrote:
> Hi Calvin,
>
> Looks good to me. Just one nit:
>
>
> 1131     warn_excluded(k, "Failed verification");
>
> I think this should be
>
> if (has_class_failed_verification(k)) {
>   warn_excluded(k, "Failed verification");
> } else {
>   warn_excluded(k, "Not linked");
> }
>
> Thanks
>
> On 3/3/20 9:23 PM, Calvin Cheung wrote:
>> JBS: https://bugs.openjdk.java.net/browse/JDK-8240481
>>
>> webrev: http://cr.openjdk.java.net/~ccheung/jdk15/8240481/webrev.00/
>>
>> Changes include:
>>
>> 1. A bool _fail_verification will be added to the 
>> DumpTimeSharedClassInfo to indicate a class has failed verification.
>>    Helper functions will be added to SystemDictionaryShared to set 
>> and get the above bool field.
>>    SystemDictionaryShared::set_class_has_failed_verification(ik) will 
>> be called instead of ik->set_in_error_state().
>>    SystemDictionaryShared::has_class_failed_verification(ik) will be 
>> called instead of ik->is_in_error_state().
>>
>>
>> 2. The class CheckSharedClassesClosure and related code will be 
>> removed as similar work is already done in 
>> SystemDictionaryShared::check_excluded_classes().
>>
>> Passed tier1 - 4 tests.
>>
>> thanks,
>> Calvin
>


More information about the hotspot-runtime-dev mailing list