RFR: 8371381: [Shenandoah] Setting ergo flags should use FLAG_SET_ERGO
Xiaolong Peng
xpeng at openjdk.org
Tue Nov 11 22:42:10 UTC 2025
On Tue, 11 Nov 2025 18:24:25 GMT, Rui Li <duke at openjdk.org> wrote:
> Setting ergo flags using `FLAG_SET_ERGO`, instead of `FLAG_SET_DEFAULT`, so we can have the right origin info.
>
> Had to expand `ShenandoahEvacReserve` range from `range(1,100)` to `range(0,100)` because when we use shenandoah passive mode and degen is also turned off (`-XX:ShenandoahGCMode=passive -XX:-ShenandoahDegeneratedGC`), we set the ShenandoahEvacReserve to 0: https://github.com/openjdk/jdk/blob/c6a8027b94bbcbde5f7dcabd0bff48b93bbb5a7f/src/hotspot/share/gc/shenandoah/mode/shenandoahPassiveMode.cpp#L41 The issue is surfaced now because `FLAG_SET_DEFAULT` doesn't check the range but `FLAG_SET_ERGO` does.
>
> Testing: jtreg gc. GHA pending.
Marked as reviewed by xpeng (Committer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/28242#pullrequestreview-3450413840
More information about the hotspot-gc-dev
mailing list