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