RFR: 8351091: Shenandoah: global marking context completeness is not accurately maintained [v7]
Xiaolong Peng
xpeng at openjdk.org
Fri Apr 4 18:11:50 UTC 2025
On Thu, 3 Apr 2025 22:55:18 GMT, Y. Srinivas Ramakrishna <ysr at openjdk.org> wrote:
>> Yes, making bitmaps has been reset after full GC, except for the for regions with pined objects.
>> _verify_marked_complete requires complete marking context, it might make more sense to change it to _verify_marked_disable after full GC.
>
> Curious; in that case should it not have failed in your testing because the objects not pinned may not have been marked as the verifier would have insisted they were? Why do we leave the regions with pinned objects marked? I am guessing once we have filled in the dead objects, the marks do not serve any purpose?
>
> May be I am missing some corner case?
It does, one of the changes https://github.com/openjdk/jdk/pull/24092 is to set the marking completeness flag to false after Full GC because the bitmaps have been reset, `_verify_marked_complete` requires complete marking marking context so there is assert error.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/23886#discussion_r2029244689
More information about the shenandoah-dev
mailing list