sdma_v7_0_emit_copy_buffer(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… sdma_v7_0_emit_copy_buffer β€” the Kernel API Manual page, bestie edition ✨

okay so picture this: it's a (9) man page from the Kernel API Manual, and the star of the show is sdma_v7_0_emit_copy_buffer. yes that's a whole mouthful, we love her anyway πŸŽ€


✨ NAME ✨

sdma_v7_0_emit_copy_buffer β€” copying a buffer using the sDMA engine, no cap πŸ¦‹

✨ SYNOPSIS ✨

void sdma_v7_0_emit_copy_buffer (struct amdgpu_ib *ib , uint64_t
src_offset , uint64_t dst_offset , uint32_t byte_count , uint32_t
copy_flags );

like, that's the whole signature. void return, so she gives you nothing back β€” she just does the thing πŸ’…

✨ ARGUMENTS ✨

  • ib β€” the indirect buffer that we're filling up with commands. she's the canvas, okay? 🎨
  • src_offset β€” the src GPU address. yep, source. where the bytes are coming from 🫢
  • dst_offset β€” the dst GPU address. where they're going. destination era ⭐
  • byte_count β€” number of bytes to xfer. that's the size of the vibe check, literally πŸ“
  • copy_flags β€” copy flags for the buffers. the little settings that make it go 🌈

✨ DESCRIPTION ✨

so what does she do? she copies GPU buffers using the DMA engine. iconic behavior honestly πŸ”₯

and the tea is: she's used by the amdgpu ttm implementation to move pages β€” but only if she's registered as the asic copy callback. not registered? then she's just sitting there, main character energy with no screen time 😭

✨ SEE ALSO ✨

the kernel file herself lives at ./drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c β€” go say hi πŸ‘‘

and here's the whole friend group, all of them (9), all of them slaying:


ngl bestie, that's a lot of (9) pages. hydrate, stretch, and read them in order πŸ“

and that's the whole page!! πŸ’– she ships from ./drivers/gpu/drm/amd/amdgpu, dated October 2026, and she's titled sdma_v7_0_emit_copy_buffer(9) all over again at the bottom because she's consistent like that. periodt. 🌸

πŸ“¦ where this page comes from