RFR: 8352918: Shenandoah: Verifier does not deactivate barriers as intended [v2]

Y. Srinivas Ramakrishna ysr at openjdk.org
Thu Mar 27 01:01:20 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 ysr (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/24264#pullrequestreview-2718945983


More information about the hotspot-gc-dev mailing list