pio_copy(9)
π pio_copy(9) β the Kernel API Manual page, bestie edition π
okay so this is pio_copy from the Kernel API Manual, and honestly? she's a little workhorse and we're gonna stan her properly.
β¨ NAME β¨
pio_copy β copy data block to MMIO space π
π¦ SYNOPSIS π¦
void pio_copy (struct hfi1_devdata *dd , struct pio_buf *pbuf , u64 pbc
, const void *from , size_t count );
π ARGUMENTS π
ddβ the hfi1 dev data, aka the main character's ID πpbufβ a number of blocks allocated within a PIO send context, slaypbcβ the PBC to send, no capfromβ the source, and it MUST be 8 byte aligned β like, non-negotiable, bestie π«Άcountβ number of DWORD (32-bit) quantities to copy from source, fr fr
πΈ DESCRIPTION πΈ
Copy data from source to PIO Send Buffer memory, 8 bytes at a time. That's the whole vibe π«
You must always write full BLOCK_SIZE bytes blocks β not a byte less, not being cute about it, full blocks only π
The first block must be written to the corresponding SOP=1 address. Like, that's where she starts, periodt π
Known things (iykyk):
pbuf->startalways starts on a block boundarypbufcan wrap only at a block boundary
π SEE ALSO π
Kernel file ./drivers/infiniband/hw/hfi1/pio_copy.c β go read her, she's iconic π§
ok that's the whole page and yes she's short but she's perfect πβ¨
and that's a wrap, bestie!! this one's from the ./drivers/infiniband/hw/hfi1 directory, dated October 2026 β screenshot it, cite it, live laugh love it πππ¦βππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms