sdma_v7_1_vm_copy_pte(9)
π sdma_v7_1_vm_copy_pte(9) β the Kernel API Manual glow-up π
okay bestie, so this is a page from the Kernel API Manual, and it's about one very specific little function living out its main character era in the AMDGPU sDMA world. Let's get into it β¨
β¨ NAME β¨
sdma_v7_1_vm_copy_pte β literally the function that updates PTEs by copying them from the GART π¦
πΈ SYNOPSIS πΈ
void sdma_v7_1_vm_copy_pte (struct amdgpu_ib *ib , uint64_t pe ,
uint64_t src , unsigned count );
that's the whole signature, no cap. void return, four arguments, very demure, very mindful π
π«Ά ARGUMENTS π«Ά
ibβ the indirect buffer to fill with commands, like it's the little canvas you're painting your sDMA commands onto π¨peβ addr of the page entry, i.e. where the page entry livessrcβ the src addr to copy from, the place we're sourcing the good stuff fromcountβ number of page entries to update, so how many PTEs are getting their moment π₯
π DESCRIPTION π
Update PTEs by copying them from the GART using sDMA. that's it, that's the whole vibe β the page entries get refreshed by copy, and the copy is done by sDMA. iconic behavior honestly π
π SEE ALSO π
bestie, the cross-reference list here is LONG and we are respecting every single one of them, in order, because these are all her sisters:
- Kernel file
./drivers/gpu/drm/amd/amdgpu/sdma_v7_1.cπ
and then the whole friend group:
sdma_v7_1_ring_get_rptr(9)sdma_v7_1_ring_get_wptr(9)sdma_v7_1_ring_set_wptr(9)sdma_v7_1_ring_emit_ib(9)sdma_v7_1_ring_emit_mem_sync(9)sdma_v7_1_ring_emit_fence(9)sdma_v7_1_inst_gfx_stop(9)sdma_v7_1_inst_rlc_stop(9)sdma_v7_1_inst_ctx_switch_enable(9)sdma_v7_1_inst_enable(9)sdma_v7_1_gfx_resume_instance(9)sdma_v7_1_inst_gfx_resume(9)sdma_v7_1_inst_rlc_resume(9)sdma_v7_1_inst_load_microcode(9)sdma_v7_1_inst_start(9)sdma_v7_1_ring_test_ring(9)sdma_v7_1_ring_test_ib(9)sdma_v7_1_vm_write_pte(9)sdma_v7_1_vm_set_pte_pde(9)sdma_v7_1_ring_pad_ib(9)sdma_v7_1_ring_emit_pipeline_sync(9)sdma_v7_1_ring_emit_vm_flush(9)sdma_v7_1_emit_copy_buffer(9)sdma_v7_1_emit_fill_buffer(9)
like, that's the entire roster and she knows all of them by name π
real talk: this page is literally just the one-liner behaviour and the argument list β no hidden options, no env vars, no exit statuses, no bug notes. what you see is what you get, fr fr π
and that's the page!! π§ the source lives in ./drivers/gpu/drm/amd/amdgpu and this edition is dated October 2026 β so yeah, mark your calendars bestie, mwah πβπ
π¦ 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