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

Kelvin Nilsen kdnilsen at openjdk.org
Fri Aug 25 18:15:08 UTC 2023


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

Kelvin Nilsen has updated the pull request incrementally with one additional commit since the last revision:

  Improve comments

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

Changes:
  - all: https://git.openjdk.org/shenandoah/pull/310/files
  - new: https://git.openjdk.org/shenandoah/pull/310/files/96ca2bea..98469ffa

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=shenandoah&pr=310&range=01
 - incr: https://webrevs.openjdk.org/?repo=shenandoah&pr=310&range=00-01

  Stats: 9 lines in 1 file changed: 6 ins; 1 del; 2 mod
  Patch: https://git.openjdk.org/shenandoah/pull/310.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah.git pull/310/head:pull/310

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


More information about the shenandoah-dev mailing list