xe_bo_pin(9)
π NAME π
Okay so welcome to xe_bo_pin(9) from the Kernel API Manual. The name is literally xe_bo_pin β Pin a kernel bo after potentially migrating it. Bestie, the whole vibe is migration first, pin second if it succeeds. π
β¨
β¨ SYNOPSIS β¨
The signature is giving:
int xe_bo_pin (struct xe_bo *bo , struct drm_exec *exec );
π ARGUMENTS π
boβ the kernel bo you're pinning. π«Άexecβ thedrm_exectransaction to use for exhaustive eviction. No cap.
πΈ DESCRIPTION πΈ
It attempts to migrate a bo to bo->placement. If that succeeds, it pins the bo. That's the plot, bestie β migration success unlocks the pin. π₯
π¦ RETURN π¦
0 on success, negative error code on migration failure. So: happy little 0 when it works, sad negative number when migration flops. π
π SEE ALSO π
Kernel file ./drivers/gpu/drm/xe/xe_bo.c β and the whole see-also group chat, all here, no skips:
xe_bo_has_single_placement(9)xe_bo_is_stolen_devmem(9)xe_bo_is_vm_bound(9)xe_bo_pin_account(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_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)
β¨ mwah! β¨ source/version: ./drivers/gpu/drm/xe Β· date: October 2026 Β· page: xe_bo_pin(9) π
π¦ 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