Integrated: 8314972: GenShen: promote_in_place needs to prepare remembered set before it enables old allocations within region

Kelvin Nilsen kdnilsen at openjdk.org
Fri Aug 25 18:28:44 UTC 2023


On Thu, 24 Aug 2023 21:44:29 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:

> An error in the original implementation left us vulnerable to a race between a worker thread which is promoting a region in place and another worker or mutator thread who is allocating memory for old objects within the same region.
> 
> This PR prevents this race by requiring the worker thread that promotes a region in place to finish the preparation of the region's remembered set before it makes the region available to other threads for allocation of old-gen memory.

This pull request has now been integrated.

Changeset: 045ae688
Author:    Kelvin Nilsen <kdnilsen at openjdk.org>
URL:       https://git.openjdk.org/shenandoah/commit/045ae6885ce33c7b718defabfc3f0736cc58e281
Stats:     64 lines in 1 file changed: 34 ins; 30 del; 0 mod

8314972: GenShen: promote_in_place needs to prepare remembered set before it enables old allocations within region

Reviewed-by: ysr, wkemper

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

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


More information about the shenandoah-dev mailing list