RFR: 8314225: SIGSEGV in JavaThread::is_lock_owned [v9]

Kevin Walls kevinw at openjdk.org
Wed May 8 07:57:08 UTC 2024


> 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.

Kevin Walls has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 14 additional commits since the last revision:

 - Merge remote-tracking branch 'upstream/master' into 8314225_is_lock_owned_no_monitor_chunks_check
 - Add back the null checks in unpack_on_stack asserts
 - Merge remote-tracking branch 'upstream/master' into 8314225_is_lock_owned_no_monitor_chunks_check
 - fill_in assert update
 - JavaThread comment update and synchronizer check before cast
 - monitor->owner() == nullptr handling in fill_in
 - Missing include
 - Move is_lock_owned from Thread to JavaThread
 - Remove JavaThread's is_lock_owned
 - Feedback from Dean
 - ... and 4 more: https://git.openjdk.org/jdk/compare/0e646f04...f4fe65d8

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/18940/files
  - new: https://git.openjdk.org/jdk/pull/18940/files/b5380800..f4fe65d8

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=18940&range=08
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=18940&range=07-08

  Stats: 3410 lines in 147 files changed: 2797 ins; 268 del; 345 mod
  Patch: https://git.openjdk.org/jdk/pull/18940.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/18940/head:pull/18940

PR: https://git.openjdk.org/jdk/pull/18940


More information about the hotspot-dev mailing list