RFR: 8261492: Shenandoah: reconsider forwardee accesses memory ordering [v2]

Zhengyu Gu zgu at openjdk.java.net
Thu Feb 11 16:30:40 UTC 2021


On Thu, 11 Feb 2021 16:17:18 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> Sorry. I commented on wrong place. I actually meant line #78 in try_update_forwardee().
>
> You have to do acquire there as well, because you can exit from the next block, the one with `old_mark.is_marked()`, never getting further. Then the whole thing unfolds: for transitive visibility of the object contents, you have to load the mark word with acquire before accessing forwardee contents.

Yes. I wasn't thinking of the use of oop content after.

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

PR: https://git.openjdk.java.net/jdk/pull/2496


More information about the shenandoah-dev mailing list