drm/i915/ttm: limit where we apply TTM_PL_FLAG_CONTIGUOUS
authorMatthew Auld <matthew.auld@intel.com>
Thu, 24 Mar 2022 17:21:42 +0000 (17:21 +0000)
committerMatthew Auld <matthew.auld@intel.com>
Tue, 29 Mar 2022 08:10:43 +0000 (09:10 +0100)
commit66ddc69373a8d5a08fe4341d9e912bfdac602248
treee62d086d24434e13567f97eef1ec46213fc90e81
parentd8b932014c4aa5a70bb6add0f14d9329e7c489c2
drm/i915/ttm: limit where we apply TTM_PL_FLAG_CONTIGUOUS

We only need this when allocating device local-memory, where this
influences the drm_buddy. Currently there is some funny behaviour where
an "in limbo" system memory object is lacking the relevant placement
flags etc. before we first allocate the ttm_tt, leading to ttm
performing a move when not needed, since the current placement is seen
as not compatible.

Suggested-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Fixes: 2ed38cec5606 ("drm/i915: opportunistically apply ALLOC_CONTIGIOUS")
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Cc: Nirmoy Das <nirmoy.das@linux.intel.com>
Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Acked-by: Nirmoy Das <nirmoy.das@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220324172143.377104-1-matthew.auld@intel.com
drivers/gpu/drm/i915/gem/i915_gem_ttm.c