drm_gpuvm_bo_put_deferred(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… drm_gpuvm_bo_put_deferred(9) πŸ’…

okay so bestie, welcome to the Kernel API Manual β€” this one lives in drm_gpuvm_bo_put_deferred(9) and it's literally the "let it go, but like... later" function for GPUVM BO references ✨


🌸 NAME 🌸

drm_gpuvm_bo_put_deferred β€” drop a struct drm_gpuvm_bo reference with deferred cleanup πŸŽ€


✨ SYNOPSIS ✨

bool drm_gpuvm_bo_put_deferred (struct drm_gpuvm_bo *vm_bo );

🫢 ARGUMENTS 🫢

  • vm_bo β€” the drm_gpuvm_bo you're releasing the reference of. that's the one, bestie πŸ’–

πŸ”₯ DESCRIPTION πŸ”₯

This releases a reference to vm_bo. periodt.

heads up though β€” this might take and release the GEMs GPUVA lock 😭 so like, it's not a "fire and forget" vibe. You should call drm_gpuvm_bo_deferred_cleanup later to actually complete the cleanup process. no skipping steps, queen πŸ‘‘

⭐ RETURN ⭐

  • true β€” if vm_bo is being destroyed πŸ’€
  • false β€” otherwise πŸ™ˆ

🌈 SEE ALSO 🌈

Kernel file ./drivers/gpu/drm/drm_gpuvm.c β€” Overview(9), Split and Merge(9), Madvise Logic - Splitting and Traversal(9), Locking(9), Examples(9), get_next_vm_bo_from_list(9), for_each_vm_bo_in_list(9), restore_vm_bo_list(9), drm_gpuvm_bo_is_zombie(9), drm_gpuvm_bo_list_add(9), drm_gpuvm_bo_list_del_init(9), drm_gpuvm_bo_list_del(9), drm_gpuvm_range_valid(9), drm_gpuvm_resv_object_alloc(9), drm_gpuvm_init(9), drm_gpuvm_put(9), drm_gpuvm_prepare_vm(9), drm_gpuvm_prepare_objects(9), drm_gpuvm_prepare_range(9), drm_gpuvm_exec_lock(9), drm_gpuvm_exec_lock_array(9), drm_gpuvm_exec_lock_range(9), drm_gpuvm_validate(9), drm_gpuvm_resv_add_fence(9), drm_gpuvm_bo_create(9), drm_gpuvm_bo_put(9), drm_gpuvm_bo_deferred_cleanup(9), drm_gpuvm_bo_find(9), drm_gpuvm_bo_obtain_locked(9), drm_gpuvm_bo_obtain_prealloc(9), drm_gpuvm_bo_extobj_add(9), drm_gpuvm_bo_evict(9), drm_gpuva_insert(9), drm_gpuva_remove(9), drm_gpuva_link(9), drm_gpuva_unlink(9), drm_gpuva_unlink_defer(9), drm_gpuva_find_first(9), drm_gpuva_find(9), drm_gpuvm_interval_empty(9), drm_gpuva_map(9), drm_gpuva_remap(9), drm_gpuva_unmap(9), drm_gpuvm_sm_map(9), drm_gpuvm_sm_unmap(9), drm_gpuvm_sm_map_exec_lock(9), drm_gpuvm_sm_unmap_exec_lock(9), drm_gpuvm_sm_map_ops_create(9), drm_gpuvm_madvise_ops_create(9), drm_gpuvm_sm_unmap_ops_create(9), drm_gpuvm_prefetch_ops_create(9), drm_gpuvm_bo_unmap_ops_create(9), drm_gpuva_ops_free(9)


and that's the whole page, bestie πŸ¦‹ β€” sourced from ./drivers/gpu/drm, version dated October 2026, filed under drm_gpuvm_bo_put_deferred(9). go forth and release your references responsibly πŸ’œπŸŽ€

πŸ“¦ where this page comes from