RFR: 8351091: Shenandoah: global marking context completeness is not accurately maintained [v7]

Y. Srinivas Ramakrishna ysr at openjdk.org
Tue Apr 8 23:30:28 UTC 2025


On Fri, 4 Apr 2025 18:09:36 GMT, Xiaolong Peng <xpeng at openjdk.org> wrote:

>> 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 in 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.

Thanks; I looked through the code and see where I had confused myself above. This looks good to me.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/23886#discussion_r2034163269


More information about the shenandoah-dev mailing list