drm_gpuvm_exec_lock_array(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ drm_gpuvm_exec_lock_array(9) ✨

okay so bestie, welcome to the Kernel API Manual πŸ’… this one lives in the kernel chapter, and it's literally the "lock everything at once" girlie. let's get into it 🫢


🌸 NAME 🌸

drm_gpuvm_exec_lock_array β€” lock all dma-resv of all associated BOs πŸ”’

like, all of them. every single one. no cap.


πŸŽ€ SYNOPSIS πŸŽ€

int drm_gpuvm_exec_lock_array (struct drm_gpuvm_exec *vm_exec ,
                               struct drm_gem_object **objs ,
                               unsigned int num_objs );

three args, one int back, that's the whole vibe ✨


πŸ¦‹ ARGUMENTS πŸ¦‹

  • vm_exec β€” the drm_gpuvm_exec wrapper, aka the main character of this whole operation πŸ‘‘
  • objs β€” additional drm_gem_objects to lock, like the plus-ones you're bringing to the lock party πŸ™ˆ
  • num_objs β€” the number of additional drm_gem_objects to lock, i.e. how many plus-ones πŸ’€

πŸ’œ DESCRIPTION πŸ’œ

so what does it actually do? it acquires all dma-resv locks of all drm_gem_objects that the given drm_gpuvm contains mappings of β€” plus the ones you handed it through objs. 🎯

it's giving "collect the whole squad and lock them all" energy, and honestly? iconic. the way that it doesn't miss a single one of the gpuvm's mapped objects, fr fr. πŸ”₯


⭐ RETURN ⭐

  • 0 on success πŸŽ‰ (slay)
  • negative error code on failure 😭 (not slay, go check your error handling bestie)

🌈 SEE ALSO 🌈

okay this list is long β€” the kernel doc girlies really said "link everything" and honestly we respect it. all of these live in the kernel file ./drivers/gpu/drm/drm_gpuvm.c πŸ“


and that's the whole page, bestie πŸ’– before you go: this one's from ./drivers/gpu/drm, dated October 2026 β€” so like, mark your calendars πŸ—“οΈβœ¨ mwah, go lock those resvs responsibly πŸ§šβ€β™€οΈπŸ’…

πŸ“¦ where this page comes from