RFR: 8266593: vmTestbase/nsk/jvmti/PopFrame/popframe011 fails with "assert(java_thread == _state->get_thread()) failed: Must be" [v3]

Serguei Spitsyn sspitsyn at openjdk.java.net
Thu Nov 18 09:34:13 UTC 2021


> The test fails when the target JavaThread has is_exiting() status. In such a case the JvmtiExport::cleanup_thread(this) has already made a clean up of its jvmtiThreadState, so the JavaThread address returned by _state->get_thread() is 0xbabababababababa.
> The fix is to add a check for is_exiting() status into handshake closure do_thread() early.
> There following handshake closures are fixed by this update:
>   - UpdateForPopTopFrameClosure
>  - SetForceEarlyReturn
>  - SetFramePopClosure

Serguei Spitsyn has updated the pull request incrementally with one additional commit since the last revision:

  get rid of the checks in jvmti handshakes: java_thread->threadObj() == NULL

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/6440/files
  - new: https://git.openjdk.java.net/jdk/pull/6440/files/60e784ec..435ab513

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

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

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


More information about the serviceability-dev mailing list