xe_bo_pin_account(9)
π xe_bo_pin_account(9)
okay so bestie, welcome to the Kernel API Manual, section 9 β yes we're in the kernel docs, yes it's giving big-brain energy, and yes this page is literally just one function but she ate π
β¨ NAME β¨
xe_bo_pin_account β pin a bo and account its pages for the shrinker π
β¨ SYNOPSIS β¨
void xe_bo_pin_account (struct xe_bo *bo );
β¨ ARGUMENTS β¨
boβ the buffer object we're pinning. that's her. the main character. π
β¨ DESCRIPTION β¨
so what this does: it pins bo via ttm_bo_pin, and then it updates the shrinker's shrinkable / purgeable page accounting so the numbers actually match reality. slay, no cap, the accounting stays honest πβ¨
β οΈ important bestie: this must be called with bo's dma-resv held. that's not optional, that's not a suggestion, that's the rules fr fr π«Ά
and the good news? it's safe to call regardless of which pin path (kernel, external, framebuffer, backup object, β¦) is the one pinning bo. so whichever friend group did the pinning, you can still run this. iconic behaviour honestly π
β¨ SEE ALSO β¨
okay this list is LONG, grab a snack π she's in the kernel file ./drivers/gpu/drm/xe/xe_bo.c and here's everybody she hangs out with:
xe_bo_has_single_placement(9)xe_bo_is_stolen_devmem(9)xe_bo_is_vm_bound(9)xe_bo_unpin_account(9)xe_bo_is_visible_vram(9)xe_bo_move_notify(9)xe_bo_set_purgeable_shrinker(9)xe_bo_set_purgeable_state(9)xe_ttm_bo_purge(9)xe_bo_shrink(9)xe_bo_notifier_prepare_pinned(9)xe_bo_notifier_unprepare_pinned(9)xe_bo_evict_pinned(9)xe_bo_restore_pinned(9)xe_bo_read(9)xe_bo_alloc(9)xe_bo_free(9)xe_bo_init_locked(9)xe_bo_create_locked(9)xe_bo_create_user(9)xe_bo_create_pin_range_novm(9)xe_bo_create_pin_map_at_novm(9)xe_bo_create_pin_map(9)xe_bo_create_pin_map_novm(9)xe_managed_bo_reinit_in_vram(9)xe_bo_pin_external(9)xe_bo_pin(9)xe_bo_unpin_external(9)xe_bo_validate(9)xe_bo_decompress(9)xe_bo_lock(9)xe_bo_unlock(9)xe_bo_can_migrate(9)xe_bo_migrate(9)xe_bo_evict(9)xe_bo_needs_ccs_pages(9)__xe_bo_release_dummy(9)xe_bo_put_commit(9)xe_bo_dev_init(9)xe_bo_dev_fini(9)xe_bo_dumb_create(9)
and that's the whole vibe check π¦π this page lives in ./drivers/gpu/drm/xe, dated October 2026 β mwah, go pin some bos responsibly, ily, bye 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