Integrated: 8311557: [JVMCI] deadlock with JVMTI thread suspension

Tom Rodriguez never at openjdk.org
Tue Aug 15 15:47:17 UTC 2023


On Fri, 7 Jul 2023 06:13:21 GMT, Tom Rodriguez <never at openjdk.org> wrote:

> Java based JVMCI compiler threads are more like normal Java threads so they aren't `hidden_from_external_view` like the native compilers.  This can leak to deadlocks if you use JVMTI to suspend all threads since this will block the compiler queue and can block execution if background compilation is disabled.  It's reasonable to treat libgraal threads like native threads in this regard.  Making jargraal threads hidden too would interfere with using profiling and debugging tool on them so I've left that alone but it might be worth changing the JVMTI suspend and resume functions to explicitly skip compiler threads as well.

This pull request has now been integrated.

Changeset: 004651dd
Author:    Tom Rodriguez <never at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/004651ddc281be04ea736807797658d64a5a7337
Stats:     23 lines in 6 files changed: 17 ins; 0 del; 6 mod

8311557: [JVMCI] deadlock with JVMTI thread suspension

Reviewed-by: thartmann, dnsimon

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

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


More information about the hotspot-compiler-dev mailing list