summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2021-07-03 01:04:02 +0200
committerDaniel Vetter <daniel.vetter@ffwll.ch>2024-01-08 14:01:49 +0100
commit5995193590e3fa0178ffac1a7068428d01c2c3f6 (patch)
treeb26e0d30397bae8891e1646bf06aa59261745a9c
parentbdcf7226b3abaac8043f2c025f6e2fdc3cce6c9d (diff)
drm/i915: No longer force synchronization when writing relocations
Not needed now that gpu relocations are gone. Also this fixes a bug since if we're supremely unlucky the next batch might also be ASYNC, reuse the buffer without any changes, and on a different engine, and then we'll fail to sync against our relocation patching buffer. Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Jon Bloomfield <jon.bloomfield@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: "Thomas Hellström" <thomas.hellstrom@linux.intel.com> Cc: Matthew Auld <matthew.auld@intel.com> Cc: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Cc: Dave Airlie <airlied@redhat.com> Cc: Jason Ekstrand <jason@jlekstrand.net>
-rw-r--r--drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c10
1 files changed, 0 insertions, 10 deletions
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
index 23b5424c0d67..09da47b6fa6e 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
@@ -1508,16 +1508,6 @@ eb_relocate_entry(struct i915_execbuffer *eb,
return -EINVAL;
}
- /*
- * If we write into the object, we need to force the synchronisation
- * barrier, either with an asynchronous clflush or if we executed the
- * patching using the GPU (though that should be serialised by the
- * timeline). To be completely sure, and since we are required to
- * do relocations we are already stalling, disable the user's opt
- * out of our synchronisation.
- */
- ev->flags &= ~EXEC_OBJECT_ASYNC;
-
/* and update the user's relocation entry */
return relocate_entry(ev->vma, reloc, eb, target->vma);
}