RFR: 8273605: VM Exit does not abort concurrent mark
Thomas Schatzl
tschatzl at openjdk.java.net
Mon Sep 13 15:29:14 UTC 2021
Hi,
can I have reviews for this change that adds (best-effort) notification of the concurrent mark thread about that the VM is exiting. In particular, the change reuses the existing abort mechanism.
Best-effort because the change just flips a global flag that is periodically polled by all threads (particularly the concurrent mark thread) to see whether we should abort.
In that test case it reduces shutdown time from a wait until the whole marking cycle finished to "immediate".
There is no test case because I could not think of anything that's reproducable: after all to have a very long delay for shutdown we need to have a *huge* heap (tested on a 50gb heap with 25gb live data), and additionally measuring shutdown time in CI is just asking for spurious errors when that process does not get enough cpu time for any reason.
Testing: test case that found that issue; tier1-3
-------------
Commit messages:
- Notify everyone to abort at VM exit instead of waiting until marking finishes.
Changes: https://git.openjdk.java.net/jdk/pull/5493/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=5493&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8273605
Stats: 15 lines in 3 files changed: 12 ins; 1 del; 2 mod
Patch: https://git.openjdk.java.net/jdk/pull/5493.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/5493/head:pull/5493
PR: https://git.openjdk.java.net/jdk/pull/5493
More information about the hotspot-gc-dev
mailing list