i915_gem_object_can_migrate(9)
β¨ i915_gem_object_can_migrate(9) β¨
okay so bestie, welcome to the kernel API manual (section 9, she's fancy π
) β today we're looking at i915_gem_object_can_migrate, and honestly? she's a vibe checker for GPU objects. let's get into it π¦
πΈ NAME πΈ
i915_gem_object_can_migrate β answers the question "can this object likely be migrated?" π« (key word: likely, bestie, hold that thought)
π SYNOPSIS π
bool i915_gem_object_can_migrate (struct drm_i915_gem_object *obj , enum
intel_region_id id );
she takes two things and gives you back a bool. that's it. that's the whole function. icon behavior.
π«Ά ARGUMENTS π«Ά
objβ the object we're trying to migrate, aka the main character of this whole operation πidβ the region we intend to migrate to, aka the destination vibe π
π DESCRIPTION π
so what she does is: check whether the object backend actually supports migration to the given region. that's the whole job. no cap.
but β and this is the important part, don't skip it β pinning may affect the ability to migrate as returned by this function π like, if something's pinned, the answer you get back might not be the answer you expect. it's giving "it's complicated".
also she's primarily intended as a helper for checking the possibility of migrating objects. so she's a helper! she's not the whole story! and heads up: she might be slightly less permissive than i915_gem_object_migrate when it comes to objects with the I915_BO_ALLOC_USER flag set. so like, she's a little stricter in that specific case. not a hater, just careful π§
β RETURN β
trueif migration is possible πfalseotherwise π
literally that simple. slay.
π₯ SEE ALSO π₯
the source lives in the kernel file ./drivers/gpu/drm/i915/gem/i915_gem_object.c β go read her fr fr π
and here's the whole friend group, alphabetically-adjacent and ready to be clicked:
__i915_gem_object_fini(9)i915_gem_object_set_cache_coherency(9)i915_gem_object_set_pat_index(9)__i915_gem_object_pages_fini(9)i915_gem_object_read_from_page(9)i915_gem_object_evictable(9)i915_gem_object_migratable(9)i915_gem_object_has_struct_page(9)i915_gem_object_has_iomem(9)i915_gem_object_migrate(9)__i915_gem_object_migrate(9)i915_gem_object_placement_possible(9)i915_gem_object_needs_ccs_pages(9)i915_gem_object_get_moving_fence(9)i915_gem_object_wait_moving_fence(9)
and that's the page!! mwah π this whole thing lives under./drivers/gpu/drm/i915/gemand it's dated October 2026, and yes the footer saysi915_gem_object_can_migrate(9)one more time because she loves a dramatic exit β¨π¦π
π¦ 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