RFR: 8366865: Allocation GC Pauses Triggered after JVM has started shutdown [v6]

Ivan Walulya iwalulya at openjdk.org
Wed Sep 17 14:59:05 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 pull request now contains 13 commits:

 - Merge remote-tracking branch 'upstream/master' into shutting_down_gcs
 - Merge remote-tracking branch 'upstream/master' into shutting_down_gcs
 - Revert
 - Thomas Review
 - 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
 - ... and 3 more: https://git.openjdk.org/jdk/compare/d7eeacf2...ab94789c

-------------

Changes: https://git.openjdk.org/jdk/pull/27190/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=27190&range=05
  Stats: 178 lines in 15 files changed: 110 ins; 62 del; 6 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