RFR: 8294238: ZGC: Move CLD claimed mark clearing [v3]
Stefan Karlsson
stefank at openjdk.org
Wed Oct 12 12:06:08 UTC 2022
On Tue, 11 Oct 2022 13:48:45 GMT, Stefan Karlsson <stefank at openjdk.org> wrote:
>> 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.
>
> Stefan Karlsson has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
>
> - Merge remote-tracking branch 'upstream/master' into 8294238_zgc_move_cld_claimed_clear
> - Guard verify_not_claimed with ifdef ASSERT
> - 8294238: ZGC: Move CLD claimed mark clearing
Thanks for the reviews!
-------------
PR: https://git.openjdk.org/jdk/pull/10591
More information about the hotspot-dev
mailing list