drm_gpuva_unlink(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay bestie, welcome to the drm_gpuva_unlink(9) page from the Kernel API Manual πŸŽ€ this is the little function that says "you're not on the list anymore, sweetie" to a GPU VA, and honestly it's giving uninvited-from-the-group-chat energy πŸ’…


🌸 NAME 🌸

drm_gpuva_unlink β€” unlink a &drm_gpuva πŸ¦‹


⭐ SYNOPSIS ⭐

void drm_gpuva_unlink (struct drm_gpuva *va );

πŸ’– ARGUMENTS πŸ’–

  • va β€” the drm_gpuva to unlink 🫢 that's the one getting yeeted off the list.

πŸ”₯ DESCRIPTION πŸ”₯

So here's the tea β˜•: this removes the given va from the GPU VA list of the drm_gem_object it is associated with. Bye bestie, no cap πŸ‘‹

It also does a two-for-one deal β€” this removes the given va from the GPU VA list of the drm_gpuvm_bo and the drm_gpuvm_bo from the drm_gem_object it is associated with, in case this call unlinks the last drm_gpuva from the drm_gpuvm_bo. Like, if you're the last one to leave the party, you also turn off the lights ✨

For every drm_gpuva entry removed from the drm_gpuvm_bo, a reference of the latter is dropped. Every single one. Reference accounting is not a vibe you can skip πŸ™ˆ

⚠️ okay this part is important, fr fr: this function expects the caller to protect the GEM's GPUVA list against concurrent access using either the GEM's dma-resv or gpuva.lock mutex. You gotta hold one of those, or it's chaos 😭 we do not stan data races.

🌈 SEE ALSO 🌈


that's the whole page bestie, you ate that πŸ“ go unlink something (with the lock held, obviously πŸ’œ)

sign-off szn πŸŽ€: this lil gem lives in ./drivers/gpu/drm, dated October 2026 β€” mwah, study hard, ily βœ¨πŸ‘‘

πŸ“¦ where this page comes from