restore_vm_bo_list(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… restore_vm_bo_list(9) πŸ’…

okay bestie, you've landed on restore_vm_bo_list β€” a page from the Kernel API Manual, and honestly it's giving "small function, big comeback energy" πŸŽ€ let's get into it.


✨ NAME ✨

restore_vm_bo_list β€” the glow-up function that moves vm_bo elements back to their original list πŸ¦‹ (yes, they get to go home, we love a reunion arc).


🌸 SYNOPSIS 🌸

restore_vm_bo_list (__gpuvm , __list_name );

πŸŽ€ ARGUMENTS πŸŽ€

  • __gpuvm β€” the drm_gpuvm πŸ’– like, the whole gpu vm situation, that one.
  • __list_name β€” the name of the list we're iterating on ⭐ she's literally the label on the group chat.

πŸ”₯ DESCRIPTION πŸ”₯

so here's the vibe: when you're done iterating a vm_bo list β€” like, you've seen everybody, you've said your goodbyes β€” you should call restore_vm_bo_list to restore the original state and let new iterations take place 🫢

no cap, it's the cleanup step. no lingering weirdness, no half-scrolled list, just a fresh start so the next loop can do its thing πŸ’…βœ¨


πŸ’œ SEE ALSO πŸ’œ

Kernel file ./drivers/gpu/drm/drm_gpuvm.c β€” go read the source, iykyk πŸ“– and also these iconic friends:

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), 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_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, you ate that πŸ“

mwah πŸ’‹ this one lives at ./drivers/gpu/drm, dated October 2026, and yes the header still says restore_vm_bo_list(9) β€” periodt. πŸ‘‘πŸŒˆ
πŸ“¦ where this page comes from