sdma_v3_0_vm_copy_pte(9)
π sdma_v3_0_vm_copy_pte(9) β kernel API manual, but make it make sense π
okay so bestie, welcome to the Kernel API Manual β¨ this one's a function page, sdma_v3_0_vm_copy_pte(9), and honestly? it's giving "small function, big responsibilities." let's get into it π¦
β¨ NAME β¨
sdma_v3_0_vm_copy_pte β update PTEs by copying them from the GART π«
πΈ SYNOPSIS πΈ
void sdma_v3_0_vm_copy_pte (struct amdgpu_ib *ib , uint64_t pe ,
uint64_t src , unsigned count );
no return value, no drama, just vibes and a void. periodt π
π ARGUMENTS π
ibβ the indirect buffer you're filling with commands. this is your canvas, your little command scrapbook ποΈpeβ addr of the page entry. yes, addr, the manpage said it, we respect it π«Άsrcβ src addr to copy from. the origin point, the source material, the main character πcountβ number of page entries to update. how many PTEs we're touching, bestie β don't lose track π€
π DESCRIPTION π
Update PTEs by copying them from the GART using sDMA (CIK).
that's literally it, that's the whole thing β but like, think about it? you're copying page table entries straight out of the GART with sDMA, and it's the CIK generation doing it. lowkey iconic π₯ no cap, this is the "just copy the PTEs" girlie of the sdma_v3_0 family and she knows her job π
π¦ SEE ALSO π¦
the kernel file lives right here, go say hi to it π
./drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
and now, the whole friend group β the entire sdma_v3_0 squad, in the order the page lists them, because we do NOT 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_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)sdma_v3_0_emit_fill_buffer(9)
twenty-three siblings and one file path, and we listed every single one π iykyk π
ngl bestie, this one's short but she's specific β PTE copying via the GART with sDMA on CIK. memorize the arg order and you're golden π
and that's a wrap!! π¬ signed off from ./drivers/gpu/drm/amd/amdgpu, October 2026, on the sdma_v3_0_vm_copy_pte(9) page itself β slay, go fill that indirect buffer πβ¨ππ¦πΈπ
π«Ά
π¦ 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