RFR: 8330253: Skip verify_consistent_lock_order when deoptimizing from monitorenter bytecode. [v3]

Patricio Chilano Mateo pchilanomate at openjdk.org
Thu Apr 18 19:19:02 UTC 2024


On Tue, 16 Apr 2024 03:04:49 GMT, Dean Long <dlong at openjdk.org> wrote:

>> Axel Boldt-Christmas has updated the pull request incrementally with two additional commits since the last revision:
>> 
>>  - Whitespace
>>  - Spelling and typos
>
> src/hotspot/share/runtime/deoptimization.cpp line 451:
> 
>> 449:     if (!is_syncronized_entry && bc != Bytecodes::Code::_monitorenter) {
>> 450:       deoptee_thread->lock_stack().verify_consistent_lock_order(lock_order, exec_mode != Deoptimization::Unpack_none);
>> 451:     }
> 
> The above checks would also hit the follow false positives:
> 1. deopt in counter overflow in prologue, not in monitorenter
> 2. monitorenter at bci 0 when raw_bci is -1 (assuming it got past the verifier)
> but seems mostly harmless to skip checks in those cases.

I thought the original check was fine. Could you elaborate on these 2 cases, I didn't really get them.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/18782#discussion_r1571250149


More information about the hotspot-dev mailing list