> The JvmtiTrace::safe_get_thread_name sometimes crashes when called while 
> current thread is in native thread state.
> 
> It happens when thread_name is set for tracing from jvmti functions.
> See:
> https://github.com/openjdk/jdk/blob/master/src/hotspot/share/prims/jvmtiEnter.xsl#L649
>  
> 
> The setup is called and the thread name is used in tracing before the thread 
> transition. There is no good location where this method could be called from 
> vm thread_state only. Some functions like raw monitor enter/exit never 
> transition in vm state. So sometimes it is needed to call this function from 
> native thread state.
> 
> The change should affect JVMTI trace mode only (-XX:TraceJVMTI). 
> 
> Verified by running jvmti/jdi/jdb tests with tracing enabled.

Leonid Mesnik has updated the pull request incrementally with one additional 
commit since the last revision:

  wrong thread state

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/19275/files
  - new: https://git.openjdk.org/jdk/pull/19275/files/f8fd4744..12ddfca2

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=19275&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=19275&range=02-03

  Stats: 7 lines in 2 files changed: 2 ins; 1 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/19275.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19275/head:pull/19275

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

Reply via email to