RFR: 8314225: SIGSEGV in JavaThread::is_lock_owned

Kevin Walls kevinw at openjdk.org
Wed May 1 09:31:52 UTC 2024


On Wed, 1 May 2024 08:35:00 GMT, Dean Long <dlong at openjdk.org> wrote:

>> Removal of JavaThread's MonitorChunks member.  This held lock information during deoptimization, but access to it is unnecessary for anything other than the deoptimization itself.
>> 
>> Access to it in is_lock_owned() was racy, and caused rare crashes.
>
> src/hotspot/share/runtime/vframeArray.cpp line 99:
> 
>> 97:           dest->set_obj(monitor->owner());
>> 98: 
>> 99:           assert(current_thread->is_Java_thread(), "Must be a JavaThread");
> 
> How about making `current_thread` a JavaThread* instead?

Yes certainly.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/18940#discussion_r1586061205


More information about the hotspot-dev mailing list