[jdk17u-dev] RFR: 8314225: SIGSEGV in JavaThread::is_lock_owned
Goetz Lindenmaier
goetz at openjdk.org
Fri Jan 3 12:04:13 UTC 2025
I backport this for parity with 17.0.15-oracle.
I had to resolve the larger part of this change.
None of my edits change the code essentially, though.
src/hotspot/share/jfr/leakprofiler/checkpoint/rootResolver.cpp
Resolved because of NULL/nullptr difference
src/hotspot/share/runtime/javaThread.cpp|hpp
These files don't exist in 17, they were split off from thread.cpp|hpp.
The modiefied code looks very similar in 17, so I could easily identify
the changed code and apply the patches. Usual minor nullptr diffs etc.
src/hotspot/share/runtime/monitorChunk.cpp
Resolved because of NULL/nullptr difference
src/hotspot/share/runtime/monitorChunk.hpp
Resolved because of context diff.
src/hotspot/share/runtime/synchronizer.cpp
Resolved. Different checks in if condition.
One is for the new locking mode in head, the other whether the mask has a locker.
... check ...
src/hotspot/share/runtime/thread.cpp
Resolved because new locking modes added an assertion in removed function is_lock_owned.
src/hotspot/share/runtime/vframeArray.cpp
Resolved. Code differs because 21 has biased locking removed.
To make it build, I had to replace
Javathread::cast() by as_Java_thread() in synchronizer.cpp.
Also I removed is_linked() from monitorChunk.hpp.
-------------
Commit messages:
- Fixes to make it build
- Resolved parts
- Backport ad0b54d429fdbd806c09aa06bb42f1ed4a0297e8
Changes: https://git.openjdk.org/jdk17u-dev/pull/3177/files
Webrev: https://webrevs.openjdk.org/?repo=jdk17u-dev&pr=3177&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8314225
Stats: 100 lines in 9 files changed: 13 ins; 73 del; 14 mod
Patch: https://git.openjdk.org/jdk17u-dev/pull/3177.diff
Fetch: git fetch https://git.openjdk.org/jdk17u-dev.git pull/3177/head:pull/3177
PR: https://git.openjdk.org/jdk17u-dev/pull/3177
More information about the jdk-updates-dev
mailing list