RFR: 8323630: GenShen: Control thread may (still) ignore requests to start concurrent GC [v2]
William Kemper
wkemper at openjdk.org
Fri Jan 12 17:19:25 UTC 2024
> A race condition exists in which the control thread may clear the `_requested_gc_cause` immediately after a mutator requests an explicit gc. When this happens, the control thread will no longer accept requests from the regulator to start concurrent GC cycles. The mutator thread will never wakeup, eventually the application will run out of memory or no progress will be made.
>
> The change here is intended to simplify the thread communication protocol by reducing the number of variables in play.
William Kemper has updated the pull request incrementally with one additional commit since the last revision:
Declare more variables with const, improve comments
-------------
Changes:
- all: https://git.openjdk.org/shenandoah/pull/382/files
- new: https://git.openjdk.org/shenandoah/pull/382/files/70d55f1c..34d269be
Webrevs:
- full: https://webrevs.openjdk.org/?repo=shenandoah&pr=382&range=01
- incr: https://webrevs.openjdk.org/?repo=shenandoah&pr=382&range=00-01
Stats: 14 lines in 1 file changed: 1 ins; 0 del; 13 mod
Patch: https://git.openjdk.org/shenandoah/pull/382.diff
Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/382/head:pull/382
PR: https://git.openjdk.org/shenandoah/pull/382
More information about the shenandoah-dev
mailing list