RFR(S): 8219642: ciReplay loads wrong data when MethodData size changes
Tobias Hartmann
tobias.hartmann at oracle.com
Fri Mar 8 13:14:17 UTC 2019
Hi Nils,
looks good to me too.
Best regards,
Tobias
On 08.03.19 12:06, Nils Eliasson wrote:
> A second review, please.
>
> Regards,
>
> Nils
>
>
> On 2019-02-25 14:16, Nils Eliasson wrote:
>>
>> Hi,
>>
>> I stumbled upon this problem when trying to
>> reproduce https://bugs.openjdk.java.net/browse/JDK-8219448 on JDK 13. The crash was recorded on a
>> late 12 build, but the issue doesn't reproduce on 13. A bisection revealed that JDK-8210832
>> <https://bugs.openjdk.java.net/browse/JDK-8210832> "Remove sneaky locking in class Monitor" caused
>> the problem, at it doesn't even touch the compilers.
>>
>> The problem is that when ciReplay serializes a ciMethodData it will serialize a MethodData as an
>> array preceded by the size.
>> But a MethodData contains an inlined Mutex, and its size changed with the removal of sneaky locking.
>>
>> This fix adds code for detecting a size change of MethodData, and tries to recover by adding
>> padding or dropping data. Since all non significant serialization data are in the beginning, the
>> padding or dropping of data is done from the start.
>>
>> https://bugs.openjdk.java.net/browse/JDK-8219642
>>
>> http://cr.openjdk.java.net/~neliasso/8219642/webrev.01/
>>
>> Please review,
>>
>> Nils Eliasson
>>
>>
>>
More information about the hotspot-compiler-dev
mailing list