RFR: 8294238: ZGC: Move CLD claimed mark clearing

Stefan Karlsson stefank at openjdk.org
Thu Oct 6 11:44:15 UTC 2022


When we claim CLDs during object iteration, we must make sure to have a cleared set of claim bits. Today we ensure this by clearing the bits before object iteration starts. Most GCs perform this clearing during a stop-the-world pause, before the actual GC marking starts.

ZGC, however, performs the clearing concurrently. This requires us to be very careful and never start following object references before the clearing has completed.

In the Generational ZGC repository, we changed it so that the code that performs the object iteration cleans up and clears these bits after itself. This has the effect that when marking starts, we know that the claimed bits have been cleared.

I'd like to change the single-generation ZGC to do the same.

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

Commit messages:
 - 8294238: ZGC: Move CLD claimed mark clearing

Changes: https://git.openjdk.org/jdk/pull/10591/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=10591&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8294238
  Stats: 28 lines in 7 files changed: 26 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/10591.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/10591/head:pull/10591

PR: https://git.openjdk.org/jdk/pull/10591


More information about the hotspot-dev mailing list