panthor_vm_idle(9)
π panthor_vm_idle β like, the Kernel API Manual page, bestie β¨
okay so this is panthor_vm_idle(9) from the Kernel API Manual, and it's genuinely one of the chiller functions out there. let's get into it π«Ά
β¨ NAME β¨
panthor_vm_idle β flag a VM idle π€
πΈ SYNOPSIS πΈ
void panthor_vm_idle (struct panthor_vm *vm );
no return value, no drama, just vibes. periodt.
π ARGUMENTS π
vmβ the VM you're flagging as idle. that's it. that's the whole argument. iconic of it honestly π
π¦ DESCRIPTION π¦
so here's the tea β β when we know the GPU is done with the VM (like, no more jobs to process, it's finished, it ate and left no crumbs), we can relinquish the AS slot attached to this VM, if any. key words: if any π
but bestie, we do not release that slot immediately. nope. instead we place the VM in the LRU list, so it can be evicted if another VM needs an AS slot. it's giving "you can have my seat but only if someone actually asks" energy π
and the reason is so good: this way, VMs keep attached to the AS they were given until we run out of free slots β which limits the number of MMU operations (TLB flush and other AS updates). fewer expensive operations = main character efficiency β¨π₯
π SEE ALSO π
kernel file ./drivers/gpu/drm/panthor/panthor_mmu.c, plus the whole friend group π―ββοΈ:
struct panthor_as_slot(9)struct panthor_mmu(9)struct panthor_vm_pool(9)struct panthor_vma(9)struct panthor_vm_op_ctx(9)struct panthor_vm(9)struct panthor_vm_bind_job(9)alloc_pt(9)free_pt(9)panthor_vm_has_unhandled_faults(9)panthor_vm_is_unusable(9)panthor_vm_active(9)panthor_vm_as(9)panthor_vm_alloc_va(9)panthor_vm_free_va(9)panthor_vm_get_bo_for_va(9)panthor_vm_pool_create_vm(9)panthor_vm_pool_destroy_vm(9)panthor_vm_pool_get_vm(9)panthor_vm_pool_destroy(9)panthor_vm_pool_create(9)panthor_mmu_suspend(9)panthor_mmu_resume(9)panthor_mmu_pre_reset(9)panthor_mmu_post_reset(9)panthor_vm_put(9)panthor_vm_get(9)panthor_vm_get_heap_pool(9)panthor_vm_heaps_sizes(9)panthor_vm_resv(9)panthor_vm_bind_job_put(9)panthor_vm_create(9)panthor_vm_bind_job_create(9)panthor_vm_bind_job_prepare_resvs(9)panthor_vm_bind_job_update_resvs(9)panthor_vm_bind_exec_sync_op(9)panthor_vm_map_bo_range(9)panthor_vm_unmap_range(9)panthor_vm_prepare_mapped_bos_resvs(9)panthor_mmu_unplug(9)panthor_mmu_init(9)panthor_mmu_debugfs_init(9)panthor_mmu_pt_cache_init(9)panthor_mmu_pt_cache_fini(9)
and that's the whole page!! π this lil baddie lives in ./drivers/gpu/drm/panthor and the manual's dated October 2026 β so go forth, flag those VMs idle, and slay β¨ππ
π¦ 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