RFR: Handle old, pinned regions [v8]

William Kemper wkemper at openjdk.org
Sat Aug 6 00:01:10 UTC 2022


> Prior to this change, mixed collections were entirely ignoring the pinned status of old regions. Pinned old regions would not be coalesced and filled (which could lead to a crash) and their pin status was not being synchronized with the pin count (which could also lead to a crash). To address these problems, the following changes have been made:
> 
> * Before adding old regions to the collection set, their pinned status is synchronized.
> * Pinned old regions will _not_ be added to a mixed collection, they will be skipped and considered for inclusion in the next mixed collection.
> * Any old regions which have not been evacuated after the last mixed collection will be made parseable (coalesced and filled) _at the start of the next old marking cycle_.

William Kemper has updated the pull request incrementally with one additional commit since the last revision:

  Improve documentation, address review comments

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

Changes:
  - all: https://git.openjdk.org/shenandoah/pull/149/files
  - new: https://git.openjdk.org/shenandoah/pull/149/files/bdda91d6..7b98bc2e

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=shenandoah&pr=149&range=07
 - incr: https://webrevs.openjdk.org/?repo=shenandoah&pr=149&range=06-07

  Stats: 96 lines in 7 files changed: 67 ins; 7 del; 22 mod
  Patch: https://git.openjdk.org/shenandoah/pull/149.diff
  Fetch: git fetch https://git.openjdk.org/shenandoah pull/149/head:pull/149

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


More information about the shenandoah-dev mailing list