RFR: 8329757: Crash with fatal error: DEBUG MESSAGE: Fast Unlock lock on stack [v3]

Patricio Chilano Mateo pchilanomate at openjdk.org
Thu Apr 11 15:54:42 UTC 2024


On Thu, 11 Apr 2024 11:01:10 GMT, Axel Boldt-Christmas <aboldtch at openjdk.org> wrote:

>> `Deoptimization::relock_objects` may reorder locks within in the `LockStack` which are added inside the same vframe. This can be handled by the interpreter but if OSR has occurred C2 may observe this invalid order in the `LockStack`, which breaks its assumption leading to incorrect behaviour.
>> 
>> This patch functionally makes sure that the LockStack is always consistent by always inflating eliminated locks when `Deoptimization::relock_objects`  is called.
>> 
>> It also adds verification code which checks that the LockStack is consistent with the lock order observed inside the deoptimized vframes. 
>> 
>> Note: for leaf deoptimizations we have enough information to recreate a correct top of the LockStack with minimal inflations, however that should be a separate RFE. This only inflates eliminated locks so the worth of solving that may be minimal or even detrimental. 
>> 
>> Tests still running. Tier 1-7 done.
>
> Axel Boldt-Christmas has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Include sort order

Thanks, looks good to me.

-------------

Marked as reviewed by pchilanomate (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/18715#pullrequestreview-1994599881


More information about the hotspot-dev mailing list