RFR: 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 16:28:10 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.
I've got some debugging to complete on this PR.
Failed pre-submit tests are due to:
1. riscv64 not currently supported by GenShen
2. https://bugs.openjdk.org/browse/JDK-8311843
-------------
PR Comment: https://git.openjdk.org/shenandoah/pull/310#issuecomment-1692503254
PR Comment: https://git.openjdk.org/shenandoah/pull/310#issuecomment-1693492334
More information about the shenandoah-dev
mailing list