sdma_v3_0_emit_fill_buffer(9)
π« sdma_v3_0_emit_fill_buffer(9) π«
okay so bestie, welcome to the Kernel API Manual β¨ β yes that's the whole manual name, we're fancy here β and today's main character is sdma_v3_0_emit_fill_buffer, which is literally the function that fills a buffer using the sDMA engine. no cap. π
πΈ NAME πΈ
sdma_v3_0_emit_fill_buffer β fill buffer using the sDMA engine π
β¨ SYNOPSIS β¨
void sdma_v3_0_emit_fill_buffer (struct amdgpu_ib *ib , uint32_t
src_data , uint64_t dst_offset , uint32_t byte_count );
like, that's the whole vibe check. void return, four args, no drama. π¦
π«Ά ARGUMENTS π«Ά
ibβ the indirect buffer we're copying to. this is the destination bestie, the one getting the glow-up. πsrc_dataβ the value we're writing into the buffer. this is the content, the personality, the lore. πdst_offsetβ the dst GPU address. that's where in GPU-land this whole thing lands, fr fr. πbyte_countβ number of bytes to xfer. how much of the good stuff is traveling. π¦
π DESCRIPTION π
Fill GPU buffers using the DMA engine (VI). that's it, that's the whole description β short and iconic, she ate and left no crumbs. π₯
so yeah: you hand her an indirect buffer, a value, a GPU address, and a byte count, and she emits the fill through the sDMA engine on VI. simple. efficient. slay. π
π SEE ALSO π
okay this section is long and honestly she's a social butterfly, so let's get into it. first, the kernel file where all this lives:
Kernel file ./drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
and now the whole friend group, in order, because we don't skip anyone in this house π«Ά:
sdma_v3_0_init_microcode(9)sdma_v3_0_ring_get_rptr(9)sdma_v3_0_ring_get_wptr(9)sdma_v3_0_ring_set_wptr(9)sdma_v3_0_ring_emit_ib(9)sdma_v3_0_ring_emit_hdp_flush(9)sdma_v3_0_ring_emit_fence(9)sdma_v3_0_gfx_stop(9)sdma_v3_0_rlc_stop(9)sdma_v3_0_ctx_switch_enable(9)sdma_v3_0_enable(9)sdma_v3_0_gfx_resume(9)sdma_v3_0_rlc_resume(9)sdma_v3_0_start(9)sdma_v3_0_ring_test_ring(9)sdma_v3_0_ring_test_ib(9)sdma_v3_0_vm_copy_pte(9)sdma_v3_0_vm_write_pte(9)sdma_v3_0_vm_set_pte_pde(9)sdma_v3_0_ring_pad_ib(9)sdma_v3_0_ring_emit_pipeline_sync(9)sdma_v3_0_ring_emit_vm_flush(9)sdma_v3_0_emit_copy_buffer(9)
bestie note: sdma_v3_0_emit_copy_buffer(9) is her sibling, the copy girlie β fill and copy, two different jobs, don't mix them up iykyk π
mwah π that's the page! sourced straight from ./drivers/gpu/drm/amd/amdgpu and dated October 2026 β yes, the future, we're early, we're always early π§ββοΈβ¨ bye bestie, go fill some buffers πππ¦
π¦ 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