RFR: 8342861: GenShen: Old generation in unexpected state when abandoning mixed gc candidates [v3]

William Kemper wkemper at openjdk.org
Fri Oct 25 17:28:46 UTC 2024


> When the generational mode cannot add any old regions to a mixed collection because they are _all_ pinned, it gives up trying to evacuate these regions. The regions must then be made parsable. However, if this phase is interrupted by a young collection it should no longer try to evacuate any old regions. Doing so triggered an assert when testing with `-XX:ShenandoahCoalesceChance=80` and `XX:+ShenandoahAllocFailureALot`.

William Kemper has updated the pull request incrementally with five additional commits since the last revision:

 - 8342734: GenShen: Test failure gc/shenandoah/TestReferenceRefersToShenandoah.java#generational
   
   Reviewed-by: ysr
 - 8342919: GenShen: Fix whitespace
   
   Reviewed-by: xpeng, kdnilsen
 - 8342927: GenShen: Guarantee slices of time for coalesce and filling
   
   Reviewed-by: kdnilsen
 - 8342848: Shenandoah: Marking bitmap may not be completely cleared in generational mode
   
   Reviewed-by: wkemper
 - 8342580: GenShen: TestChurnNotifications fails executing in unintended test-id modes with ShenandoahGCMode=generational
   
   Reviewed-by: wkemper, kdnilsen

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

Changes:
  - all: https://git.openjdk.org/shenandoah/pull/522/files
  - new: https://git.openjdk.org/shenandoah/pull/522/files/8532d08f..8f486949

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=shenandoah&pr=522&range=02
 - incr: https://webrevs.openjdk.org/?repo=shenandoah&pr=522&range=01-02

  Stats: 46 lines in 15 files changed: 22 ins; 3 del; 21 mod
  Patch: https://git.openjdk.org/shenandoah/pull/522.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/522/head:pull/522

PR: https://git.openjdk.org/shenandoah/pull/522


More information about the shenandoah-dev mailing list