RFR: 8252543: [JVMCI] Libgraal can deadlock in blocking compilation mode
Doug Simon
dnsimon at openjdk.java.net
Sun Sep 6 19:53:53 UTC 2020
To prevent a deadlock in libgraal under `-Xcomp` or `-Xbatch` due to a lock being held in libgraal, a new mechanism is
added by this change that allow JVMCI compiler threads to communicate their "progress" to HotSpot:
* Each JVMCI compiler thread has a "compilation ticks" counter.
* There is also a global JVMCI compilation ticks counter.
* Each JVMCI VM call increments the JVMCI compiler thread-local compilation ticks counter.
* Every 512 increments of such a counter also increments the global counter.
* A thread waiting on a blocking JVMCI compilation will be unblocked if these counters indicate no progress after a
defined period.
-------------
Commit messages:
- add compilation ticks for mitigating against deadlock due to blocking JVMCI compilation
Changes: https://git.openjdk.java.net/jdk/pull/35/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=35&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8252543
Stats: 126 lines in 11 files changed: 72 ins; 14 del; 40 mod
Patch: https://git.openjdk.java.net/jdk/pull/35.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/35/head:pull/35
PR: https://git.openjdk.java.net/jdk/pull/35
More information about the hotspot-compiler-dev
mailing list