]> www.infradead.org Git - users/hch/configfs.git/commitdiff
drm/xe: Only check last fence on user binds
authorMatthew Brost <matthew.brost@intel.com>
Mon, 5 Aug 2024 20:02:33 +0000 (13:02 -0700)
committerMatthew Brost <matthew.brost@intel.com>
Mon, 5 Aug 2024 21:28:07 +0000 (14:28 -0700)
We only set the last fence on user binds, so no need to check last fence
kernel issued binds. Will avoid blowing up last fence lockdep asserts.

Cc: Francois Dugast <francois.dugast@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Jonathan Cavitt <jonathan.cavitt@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240805200233.3050325-1-matthew.brost@intel.com
drivers/gpu/drm/xe/xe_pt.c

index 97a6a0b0b8bad8d8847a755285fceec50dba5398..579ed31b46dbaf9088d08bb234d96faca2698ce3 100644 (file)
@@ -1149,10 +1149,12 @@ static int xe_pt_vm_dependencies(struct xe_sched_job *job,
                        return err;
        }
 
-       if (job)
-               err = xe_sched_job_last_fence_add_dep(job, vm);
-       else
-               err = xe_exec_queue_last_fence_test_dep(pt_update_ops->q, vm);
+       if (!(pt_update_ops->q->flags & EXEC_QUEUE_FLAG_KERNEL)) {
+               if (job)
+                       err = xe_sched_job_last_fence_add_dep(job, vm);
+               else
+                       err = xe_exec_queue_last_fence_test_dep(pt_update_ops->q, vm);
+       }
 
        for (i = 0; job && !err && i < vops->num_syncs; i++)
                err = xe_sync_entry_add_deps(&vops->syncs[i], job);