[lworld] RFR: 8341844: [lworld] Test crashing in genzgc in ZBarrier::mark_from_old_slow_path(zaddress)+0x4c

David Simms dsimms at openjdk.org
Wed Dec 18 08:24:52 UTC 2024


On Tue, 17 Dec 2024 21:37:00 GMT, Frederic Parain <fparain at openjdk.org> wrote:

>> Generational zgc requires a store barrier in addition to the load barrier.
>> load barrier followed by bulk copy isn't enough
>
> src/hotspot/share/gc/z/zBarrierSet.inline.hpp line 499:
> 
>> 497:     //   2) load and store barrier for each oop
>> 498:     //   3) possibly raw copy for any primitive payload trailer
>> 499:     assert(lk == NON_ATOMIC_FLAT || lk == PAYLOAD, "Cannot support layout other than NON_ATOMIC_FLAT"); // Note: PAYLOAD is incorrect, resolve when transistioned to new flattening
> 
> Why is PAYLOAD incorrect here?
> And what about ATOMIC_FLAT? Even with ZGC, it can contain an oop.

You are correct there is a use single case under the `md->contains_oops()` condition with Z that is valid, a single oop. Will adjust

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

PR Review Comment: https://git.openjdk.org/valhalla/pull/1321#discussion_r1889807848


More information about the valhalla-dev mailing list