RFR: 8335289: GenShen: Whitebox breakpoint GC requests may cause assertions
William Kemper
wkemper at openjdk.org
Thu Jun 27 23:06:59 UTC 2024
When a test requests a concurrent GC breakpoint, the calling thread arranges for itself to block until the concurrent GC thread notifies it that the GC has reached the requested breakpoint (phase). The code that handles the whitebox breakpoint request should therefore not block the caller. An attempt was made to do this, but the request just has the caller thread run in a busy loop without waiting. What's more, this loop resets the requested gc cause on every iteration, which may lead to gc cycles with a wb_breakpoint cause, but no breakpoint set - which violates assertions.
-------------
Commit messages:
- Do not busy loop when handling whitebox breakpoint request
Changes: https://git.openjdk.org/shenandoah/pull/453/files
Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=453&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8335289
Stats: 26 lines in 2 files changed: 20 ins; 4 del; 2 mod
Patch: https://git.openjdk.org/shenandoah/pull/453.diff
Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/453/head:pull/453
PR: https://git.openjdk.org/shenandoah/pull/453
More information about the shenandoah-dev
mailing list