{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreighsa47746aezxsjyzoe6i47i3o56gq7swkhy7dry7stch7ibwhre",
"uri": "at://did:plc:ivbknywyskln22er3nkssdhl/app.bsky.feed.post/3mlojyydf7q32"
},
"path": "/t/include-racy-reads-in-rust-memory-model-with-maybeinvalid-t/24289#post_8",
"publishedAt": "2026-05-12T16:45:02.000Z",
"site": "https://internals.rust-lang.org",
"textContent": "RalfJung:\n\n> (Miri of course already has the same problem for the variant of this program where the two loads are `Ordering::Relaxed`. But given that only a tiny fraction of reads in any given program use that ordering, I think it is a very different situation if we have that problem for _all_ reads vs. only for a few of them.)\n\nI would likewise expect that _very few_ pieces of data in a program would use this kind of pseudo-cell that permits racy reads. By way of example, the Linux kernel has RCU, but the actual fraction of pointers managed by RCU is a small fraction of pointers in the kernel.\n\nI would love to see a mechanism for this.",
"title": "Include racy reads in Rust memory model with `MaybeInvalid<T>`"
}