RFR: 8273639: tests fail with "assert(_handle_mark_nesting > 1) failed: memory leak: allocating handle outside HandleMark"

Per Liden pliden at openjdk.java.net
Mon Sep 13 12:06:06 UTC 2021


This is a fix for an unintended side-effect of JDK-8273482. The problem is that we need to have a HandleMark on the stack before calling ThreadStackTrace::dump_stack_at_safepoint(). Before JDK-8273482, calls to ThreadStackTrace::dump_stack_at_safepoint()  were always done from the VMThread, which always has a HandleMark on the stack before evaluating a VM operation. After JDK-8273482, calls to this function can be made from WorkerThreads, which doesn't always have a HandleMark on its stack. The fix is simple, make sure we have a HandleMark on the stack before calling ThreadStackTrace::dump_stack_at_safepoint().

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

Commit messages:
 - 8273639: tests fail with "assert(_handle_mark_nesting > 1) failed: memory leak: allocating handle outside HandleMark"

Changes: https://git.openjdk.java.net/jdk/pull/5492/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=5492&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8273639
  Stats: 4 lines in 1 file changed: 3 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/5492.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/5492/head:pull/5492

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


More information about the hotspot-runtime-dev mailing list