RFR: 8314225: SIGSEGV in JavaThread::is_lock_owned

Dean Long dlong at openjdk.org
Wed May 1 08:37:56 UTC 2024


On Wed, 24 Apr 2024 19:50:08 GMT, Kevin Walls <kevinw 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?

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

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


More information about the hotspot-dev mailing list