RFR: Fix preemption of coalesce and fill
Kelvin Nilsen
kdnilsen at openjdk.org
Wed Nov 2 23:28:37 UTC 2022
It is necessary to check the return status of entry_coalesce_and_fill() during ShenandoahOldGeneration::prepare_gc().
Otherwise, when coalesce-and-fill is preempted before it is completed, we will reset the old-gen mark bitmap and invoke old_generation->set_mark_incomplete() before the coalesce-and-fill effort is resumed. This results in an assertion failure with debug builds, or incomplete coalesce-and-fill results with release builds.
-------------
Commit messages:
- Merge remote-tracking branch 'GitFarmBranch/fix-preemption-of-coalesce-and-fill' into fix-preemption-of-coalesce-and-fill
- Check for preemption of coalesce-and-fill during prep for old gc
Changes: https://git.openjdk.org/shenandoah/pull/166/files
Webrev: https://webrevs.openjdk.org/?repo=shenandoah&pr=166&range=00
Stats: 7 lines in 1 file changed: 3 ins; 2 del; 2 mod
Patch: https://git.openjdk.org/shenandoah/pull/166.diff
Fetch: git fetch https://git.openjdk.org/shenandoah pull/166/head:pull/166
PR: https://git.openjdk.org/shenandoah/pull/166
More information about the shenandoah-dev
mailing list