xe_vm_bump_lru(9)
xe_vm_bump_lru(9) β hiiii bestie, welcome to the Kernel API Manual page for LRU bumping, and yes we're gonna make it make sense π
β¨
π NAME π
xe_vm_bump_lru β bump the LRU position of BOs used by a submission, periodt.
β¨ SYNOPSIS β¨
void xe_vm_bump_lru (struct xe_vm *vm , struct drm_exec *exec );
π«Ά ARGUMENTS π«Ά
vmβ the vm for which we are bumping LRUs. That's the whole assignment, bestie π«‘execβ thestruct drm_execwith the locked GEM objects. Locked GEMs stay locked, iykyk π
π DESCRIPTION π
Okay so here's the vibe: this moves the VM's private BOs, plus all external objects locked by exec, over to the LRU tail. The private BOs get moved in bulk using the vm's xe_vm.lru_bulk_move β bulk move, iconic β¨
The external objects are a different story. They may be shared with other VMs, so they're not part of that bulk move, and they get bumped individually instead. No cap, that's the whole function.
π SEE ALSO π
Go check out these other pages and the kernel file too, bestie π
- Kernel file
./drivers/gpu/drm/xe/xe_vm.c xe_vm_drm_exec_lock(9)xe_vm_remove_compute_exec_queue(9)xe_vm_kill(9)xe_vm_validate_rebind(9)xe_vm_resume_rebind_worker(9)xe_vm_add_fault_entry_pf(9)xe_vm_range_rebind(9)xe_vm_range_unbind(9)xe_vma_mem_attr_copy(9)xe_vm_lock_vma(9)xe_vm_create_scratch(9)xe_vm_find_vma_by_addr(9)xe_vma_has_default_mem_attrs(9)structxe_vma_lock_and_validate_flags(9)xe_vm_bind_kernel_bo(9)xe_vm_lock(9)xe_vm_unlock(9)xe_vm_invalidate_vma_submit(9)xe_vm_invalidate_vma(9)xe_vma_need_vram_for_atomic(9)xe_vm_alloc_madvise_vma(9)xe_vm_find_cpu_addr_mirror_vma_range(9)xe_vm_alloc_cpu_addr_mirror_vma(9)xe_vm_add_exec_queue(9)xe_vm_remove_exec_queue(9)
Source/version: ./drivers/gpu/drm/xe Β· date: October 2026 Β· page: xe_vm_bump_lru(9) β mwah, that's the whole manual, bestie πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms