RFR: 8366865: G1: Allocation GC Pauses Triggered after JVM has started shutdown [v2]
Ivan Walulya
iwalulya at openjdk.org
Fri Sep 12 10:38:08 UTC 2025
> Please review this patch to skip VM_GC_Collect_Operations if initiated after the VM shutdown process has begun. We add a _is_shutting_down flag to CollectedHeap, which is set while holding the Heap_lock. This ensures mutual exclusion with VM_GC_Collect_Operations, which also require the Heap_lock.
>
> Skipping VM_GC_Collect_Operation would otherwise cause allocation requests to fail (resulting in OutOfMemoryError) if requesting daemon threads were allowed to continue, we instead block these threads on a monitor. They remain stalled until they are terminated as part of the VM shutdown sequence.
>
> Testing: Tier 1-7
Ivan Walulya 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 nine additional commits since the last revision:
- return on timeout
- Merge remote-tracking branch 'upstream/master' into shutting_down_gcs
- timed wait
- Merge remote-tracking branch 'upstream/master' into shutting_down_gcs
- space
- remove debug logs
- remove debug logs
- log_cpu_time
- init
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/27190/files
- new: https://git.openjdk.org/jdk/pull/27190/files/8a05ec45..187a463b
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=27190&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=27190&range=00-01
Stats: 11286 lines in 575 files changed: 5300 ins; 2963 del; 3023 mod
Patch: https://git.openjdk.org/jdk/pull/27190.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/27190/head:pull/27190
PR: https://git.openjdk.org/jdk/pull/27190
More information about the hotspot-dev
mailing list