{
  "$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>`"
}