RFR: 8352918: Shenandoah: Verifier does not deactivate barriers as intended [v2]
Kelvin Nilsen
kdnilsen at openjdk.org
Wed Mar 26 21:19:14 UTC 2025
On Wed, 26 Mar 2025 20:46:32 GMT, William Kemper <wkemper at openjdk.org> wrote:
>> When verifying reachable objects, Shenandoah's verifier clears the `_gc_state` with the intention of deactivating barriers. However, the mechanism for this is a `friend` of the heap and does not toggle the flag to cause threads to use the value set on the verifier's safepoint. The net effect here is that the barriers are _not_ deactivated during verification. Leaving the barriers on while the verifier traverses the heap may have unintended consequences (cards marked, objects evacuated, etc.)
>
> William Kemper has updated the pull request incrementally with one additional commit since the last revision:
>
> Rename saved fields so they are easier to distinguish from the heap's fields
Marked as reviewed by kdnilsen (Committer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/24264#pullrequestreview-2718638195
More information about the shenandoah-dev
mailing list