]> git.apps.os.sepia.ceph.com Git - ceph-client.git/commitdiff
drm/xe: Don't trigger rebind on initial dma-buf validation
authorMatthew Brost <matthew.brost@intel.com>
Mon, 25 Aug 2025 15:28:41 +0000 (08:28 -0700)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Tue, 26 Aug 2025 14:12:11 +0000 (10:12 -0400)
On the first validate of an imported dma-buf (initial bind), the device
has no GPU mappings, so a rebind is unnecessary. Rebinding here is
harmful in multi-GPU setups and for VMs using preempt-fence mode, as it
would evict in-flight GPU work.

v2:
 - Drop dma_buf_validated, check for XE_PL_SYSTEM (Thomas)

Fixes: dd08ebf6c352 ("drm/xe: Introduce a new DRM driver for Intel GPUs")
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Link: https://lore.kernel.org/r/20250825152841.3837378-1-matthew.brost@intel.com
(cherry picked from commit ffdf968762e4fb3cdae54e811ec3525e67440a60)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_bo.c

index d3ef79ebceee0b29a89dea330d5844682ebacce0..1be2415966df2dfce2abff03bfda6fa5f5ebd577 100644 (file)
@@ -812,7 +812,8 @@ static int xe_bo_move(struct ttm_buffer_object *ttm_bo, bool evict,
        }
 
        if (ttm_bo->type == ttm_bo_type_sg) {
-               ret = xe_bo_move_notify(bo, ctx);
+               if (new_mem->mem_type == XE_PL_SYSTEM)
+                       ret = xe_bo_move_notify(bo, ctx);
                if (!ret)
                        ret = xe_bo_move_dmabuf(ttm_bo, new_mem);
                return ret;