diff options
| author | Matthew Brost <matthew.brost@intel.com> | 2025-08-25 08:28:41 -0700 |
|---|---|---|
| committer | Matthew Brost <matthew.brost@intel.com> | 2025-08-25 21:59:54 -0700 |
| commit | ffdf968762e4fb3cdae54e811ec3525e67440a60 (patch) | |
| tree | 4f79b4cf1f2c9e40516aeea9c06f7aad2b4a0b01 /drivers/gpu/drm | |
| parent | drm/xe/vm: Clear the scratch_pt pointer on error (diff) | |
| download | linux-ffdf968762e4fb3cdae54e811ec3525e67440a60.tar.gz linux-ffdf968762e4fb3cdae54e811ec3525e67440a60.zip | |
drm/xe: Don't trigger rebind on initial dma-buf validation
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
Diffstat (limited to 'drivers/gpu/drm')
| -rw-r--r-- | drivers/gpu/drm/xe/xe_bo.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c index 11eaf3b06766..0a6a32cfb771 100644 --- a/drivers/gpu/drm/xe/xe_bo.c +++ b/drivers/gpu/drm/xe/xe_bo.c @@ -816,7 +816,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; |
