drm_gpuva_find_first(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… drm_gpuva_find_first(9) πŸ’…

okay bestie, welcome to the Kernel API Manual ✨ β€” yes, the actual manual, and yes, this page is short but it's literally the little function that could. it finds the first &drm_gpuva in a given range, and honestly? iconic behavior. no cap.


🌸 NAME 🌸

drm_gpuva_find_first β€” find the first &drm_gpuva in the given range 🫢


✨ SYNOPSIS ✨

struct drm_gpuva * drm_gpuva_find_first (struct drm_gpuvm *gpuvm , u64
addr , u64 range );

like look at that signature. she's got a struct drm_gpuva * return type and everything. main character energy fr fr πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • gpuvm β€” the drm_gpuvm to search in πŸ” this is the playground, bestie.
  • addr β€” the drm_gpuvas address πŸ“ where we're looking.
  • range β€” the drm_gpuvas range 🌈 how far the vibe extends from that address.

πŸ’– RETURN πŸ’–

the first drm_gpuva within the given range. that's it, that's the tea β˜• no hidden lore, no surprises, she just hands you the first one and dips ✌️


πŸ¦‹ SEE ALSO πŸ¦‹

okay this is the part where the page goes full stan-list mode, because there are so many friends in this ecosystem and we're naming all of them, no skipping, periodt πŸ‘‘

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_put_deferred(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(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)


ngl bestie, that SEE ALSO list is long long. read it anyway. she ate πŸ’€πŸ”₯

k bye ily, this page came from ./drivers/gpu/drm, October 2026 edition, and it's literally called drm_gpuva_find_first(9) β€” go find your first gpuva, queen πŸ‘‘πŸ’œ

πŸ“¦ where this page comes from