__iowrite64_copy(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… __iowrite64_copy β€” bestie's guide to yeeting data into MMIO πŸŽ€

Ok so this is a page from the Kernel API Manual, and it's honestly such a vibe once you get it. Sit down, grab a strawberry drink πŸ“, and let's go.


✨ NAME ✨

__iowrite64_copy β€” copy data to MMIO space, in 64-bit or 32-bit units πŸ¦‹


🌸 SYNOPSIS 🌸

void __iowrite64_copy (void __iomem *to , const void *from , size_t
count );

πŸŽ€ ARGUMENTS πŸŽ€

  • to β€” the destination, and it lives in MMIO space. It must be 64-bit aligned, no cap, don't try to be cute about it πŸ’…
  • from β€” the source. Also must be 64-bit aligned. Same energy, same rule 🫢
  • count β€” how many 64-bit quantities you wanna copy. That's the unit, that's the number, that's it ✨

πŸ’– DESCRIPTION πŸ’–

So what it does: it copies data from kernel space over to MMIO space, in units of 32 or 64 bits at a time. Slay. πŸŽ€

But here's the part where you gotta listen, bestie:

The order of access is not guaranteed, and no memory barrier is performed afterwards. Like, at all. Not a one. 😭

So don't go assuming things happen in a nice tidy sequence, because they lowkey might not, and there's no barrier waiting at the end to make it all make sense. Iconic behaviour, honestly, but you gotta respect it. πŸ”₯


πŸ¦‹ SEE ALSO πŸ¦‹


Ok that's the whole page, you ate that πŸ“πŸ’œ

Sign-off era: this lil gem comes from the source/version <hotpink>./lib</hotpink>, dated October 2026 ⭐ β€” and the page name is of course __iowrite64_copy(9). Periodt. πŸ‘‘πŸŒˆ

πŸ“¦ where this page comes from