RFR: Mixed evacuation fixes

William Kemper wkemper at openjdk.java.net
Fri May 21 15:10:50 UTC 2021


This PR has a few bug fixes, the most important of which corrects an error that prevented references between old regions from being updated. To handle this case we expose the notion of _mixed_ collections to the update reference loop. This lets us continue using the optimization of only updating references in the remembered set during a _pure_ young collection. The other fixes are comparatively minor and described in their commit message.

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

Commit messages:
 - Formatting fixes
 - Do not include cset regions when scanning the remembered set for the verifier
 - Only look at old regions when purging old SATB queue.
 - Only register successfully evacuated object with remembered set
 - Update references in old regions during a mixed gc cycle

Changes: https://git.openjdk.java.net/shenandoah/pull/43/files
 Webrev: https://webrevs.openjdk.java.net/?repo=shenandoah&pr=43&range=00
  Stats: 59 lines in 6 files changed: 28 ins; 18 del; 13 mod
  Patch: https://git.openjdk.java.net/shenandoah/pull/43.diff
  Fetch: git fetch https://git.openjdk.java.net/shenandoah pull/43/head:pull/43

PR: https://git.openjdk.java.net/shenandoah/pull/43


More information about the shenandoah-dev mailing list