RFR: 8285794: AsyncGetCallTrace might acquire a lock via JavaThread::thread_from_jni_environment [v2]

Johannes Bechberger duke at openjdk.java.net
Thu Apr 28 11:38:32 UTC 2022


> Calling JavaThread::thread_from_jni_environment for a terminated thread in AsyncGetCallTrace might cause the acquisition of a lock, making AsyncGetCallTrace non-signal-safe. 
> 
> AsyncGetCallTrace can only be called for the current threads (there are asserts for that), therefore using JavaThread::current directly and checking the termination status is semantically equivalent.

Johannes Bechberger has updated the pull request incrementally with one additional commit since the last revision:

  Use Thread::current_or_null_safe() and add comments

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/8446/files
  - new: https://git.openjdk.java.net/jdk/pull/8446/files/28180bc9..1e2885e6

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=8446&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=8446&range=00-01

  Stats: 8 lines in 1 file changed: 6 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8446.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8446/head:pull/8446

PR: https://git.openjdk.java.net/jdk/pull/8446


More information about the serviceability-dev mailing list