RFR(XXS) 8241244 CDS dynamic dump asserts in ArchivePtrBitmapCleaner::do_bit

Ioi Lam ioi.lam at oracle.com
Mon Mar 23 21:02:22 UTC 2020


Hi Coleen & Yumin,

Thanks for the review. I've pushed the changes.

- Ioi

On 3/23/20 5:53 AM, coleen.phillimore at oracle.com wrote:
>
> Ioi, This looks good and reasonable.
>
> Coleen
>
>
>
> On 3/22/20 11:49 PM, Ioi Lam wrote:
>> https://bugs.openjdk.java.net/browse/JDK-8241244
>> http://cr.openjdk.java.net/~iklam/jdk15/8241244-dynamic-cds-redefined-class.v01/ 
>>
>>
>> In the failing test case, some classes in the base archive (e.g., 
>> java.lang.Throwable) are redefined by JFR before the dynamic archive 
>> is dumped. The assert happens when java/lang/InternalError is 
>> destined for the dynamic archive, but its vtable contains a redefined 
>> method of the Throwable class. This method is neither in the base 
>> archive, nor in the dynamic archive, causing the assert to fail.
>>
>> The fix is: if a class (or any of its super-types) has been 
>> redefined, do not dump this class into the dynamic CDS archive.
>>
>> Note - this fix is not needed for the static archive dumping (java 
>> -Xshare:dump), as class redefinition cannot happen.
>>
>> Thanks
>> - Ioi
>>
>>
>>
>



More information about the hotspot-runtime-dev mailing list