amdgpu_vm_bo_update(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… amdgpu_vm_bo_update(9) β€” the Kernel API Manual page, but make it make sense

okay so bestie, welcome to the Kernel API Manual, section 9, and today's main character is amdgpu_vm_bo_update β€” yes that's the title, yes we're saying it out loud. She lives in ./drivers/gpu/drm/amd/amdgpu and she's here to update all the BO mappings in the vm page table. That's literally her whole personality. slay.


✨ NAME ✨

amdgpu_vm_bo_update β€” update all the BO mappings in the vm page table πŸ¦‹

(like, not one, not two β€” all of them. the whole friend group.)


πŸŽ€ SYNOPSIS πŸŽ€

int amdgpu_vm_bo_update (struct amdgpu_device *adev , struct
       amdgpu_bo_va *bo_va , bool clear );

she takes three things and returns an int. that's it. that's the vibe check. πŸ’…


🌸 ARGUMENTS 🌸

  • adev β€” an amdgpu_device pointer. the whole GPU device, the big one, the mothership. πŸ‘‘
  • bo_va β€” the requested BO and the VM object, together, in one struct. it's giving package deal. 🎁
  • clear β€” a bool, and if it's true, she clears the entries. that's the whole rule. no cap. 🧹

🫢 DESCRIPTION 🫢

So what does she actually do? She fills in the page table entries for bo_va. That's it, that's the whole job β€” filling in page table entries, lowkey iconic of her. ✨

No extra side quests, no surprise lore. fill in the entries. periodt.


⭐ RETURN ⭐

  • 0 β€” success, we ate, everyone's happy πŸ’–
  • -EINVAL β€” failure, it's giving error, and honestly 😭

πŸ¦‹ SEE ALSO πŸ¦‹

okay this is the part where I need you to stay with me because there are so many of them and I'm not skipping a single one. every single reference, in order, exactly as she wrote them. no cutting corners, no "you get the idea". here we go. 🌈

the source + the big concept:

  • Kernel file ./drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c β€” that's where she lives, go say hi 🏠
  • GPUVM(9)

the structs (yes they're in the list too):

  • struct amdgpu_prt_cb(9)
  • struct amdgpu_vm_tlb_seq_struct(9)

locking / validity girlies:

BO state machine besties:

update / stats squad:

init / validate / ready core:

compute-flavoured ones:

lookups & gart:

TLB timeline:

PRT (the whole little family):

freed / moved / evictable:

mapping operations, the whole set:

sizing & idle:

task info trio (well, four):

lifecycle, start to finish:

ioctl & faults & debugfs:

okay that was a lot but we got through it together, i'm proud of us πŸ«ΆπŸ’œ


quick reminder bestie: clear being true means the entries get cleared. don't forget, that's the whole point of the flag. πŸ™ˆ

and that's the page!! source is ./drivers/gpu/drm/amd/amdgpu, she's dated October 2026, and the footer's version tag is just amdgpu_vm_bo_update(9) again because she loves a callback. bye bestie, go fill in those page table entries πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from