RFR: 8252543: [JVMCI] Libgraal can deadlock in blocking compilation mode [v2]
Doug Simon
dnsimon at openjdk.java.net
Tue Sep 8 21:19:09 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.
Doug Simon has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev
excludes the unrelated changes brought in by the merge/rebase. The pull request contains one additional commit since
the last revision:
add compilation ticks for mitigating against deadlock due to blocking JVMCI compilation
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/35/files
- new: https://git.openjdk.java.net/jdk/pull/35/files/57870a78..94e4a3f4
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=35&range=01
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=35&range=00-01
Stats: 7637 lines in 271 files changed: 5956 ins; 636 del; 1045 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