xe_bo_pin_external(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

okay so bestie, welcome to xe_bo_pin_external(9) β€” this is the Kernel API Manual page for pinning an external BO. Literally the whole vibe is: pin an external BO. ✨


✨ SYNOPSIS ✨

int xe_bo_pin_external (struct xe_bo *bo , bool in_place , struct drm_exec *exec );

πŸŽ€ ARGUMENTS πŸŽ€

  • bo β€” the buffer object to be pinned. That's the main character, fr.
  • in_place β€” pin in current placement, don't attempt to migrate. Like, stay put, no moving arc. πŸ’…
  • exec β€” the drm_exec transaction to use for exhaustive eviction. yep, that's the one.

πŸ’… DESCRIPTION πŸ’…

Okay so this pins an external BO β€” and "external" means not tied to a VM, can be exported via dma-buf / prime FD. It's a unique call compared to xe_bo_pin because this function has its own set of asserts and code to ensure evict / restore on suspend / resume. It's giving special-case energy, but in a "we literally must not lose this on suspend" way. πŸ’–

Returns 0 for success, negative error code otherwise. Periodt.

πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file ./drivers/gpu/drm/xe/xe_bo.c β€” and then the whole friend group: 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(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).

source/version ./drivers/gpu/drm/xe, dated October 2026, page xe_bo_pin_external(9) β€” bye bestie, mwah πŸ’‹πŸ«Ά

πŸ“¦ where this page comes from