si_dma_ring_emit_vm_flush(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… si_dma_ring_emit_vm_flush(9) πŸ’…

okay so bestie, welcome to the Kernel API Manual ✨ this one's a little kernel-side icon and she's here to tell you all about flushing a VM TLB with sDMA. buckle up πŸŽ€


🌸 NAME 🌸

si_dma_ring_emit_vm_flush β€” cik vm flush using sDMA πŸ¦‹

(yes the NAME says cik and the DESCRIPTION says VI, and yes we're keeping both exactly as they are, no cap πŸ’€)


⭐ SYNOPSIS ⭐

void si_dma_ring_emit_vm_flush (struct amdgpu_ring *ring , unsigned vmid
, uint64_t pd_addr );

that's the whole signature, copy it exactly, don't be weird about it 🫢


πŸŽ€ ARGUMENTS πŸŽ€

  • ring β€” an amdgpu_ring pointer, literally the ring you're working with πŸ’«
  • vmid β€” the vmid number to use, that's it, that's the whole vibe πŸ”₯
  • pd_addr β€” an address πŸ‘‘

πŸ’– DESCRIPTION πŸ’–

So what she actually does: Update the page table base and flush the VM TLB using sDMA (VI).

that's the tea β˜• page table base gets updated, VM TLB gets flushed, sDMA does the work, and it's the VI situation. short and iconic, periodt πŸ’…


🌈 SEE ALSO 🌈

the kernel file in question, living its best life at:

  • ./drivers/gpu/drm/amd/amdgpu/si_dma.c πŸ“

and her whole friend group, all of them, in order, no skipping 🧚:


ngl bestie, this one's short but she ate πŸ’– go read the source file if you want the full lore, iykyk πŸ™ˆ

okay that's the whole page, mwah 😭🫢 this cutie came out of ./drivers/gpu/drm/amd/amdgpu and she's dated October 2026 β€” bestie really said "future icon" and meant it πŸ‘‘βœ¨

πŸ“¦ where this page comes from