RFR: Fix preemption of coalesce and fill

William Kemper wkemper at openjdk.org
Wed Nov 2 23:28:37 UTC 2022


On Wed, 2 Nov 2022 23:22:20 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:

> 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.

Good catch! Thank you!

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

Marked as reviewed by wkemper (Committer).

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


More information about the shenandoah-dev mailing list