Skip to content
Snippets Groups Projects
Commit 0f5d69e8 authored by Chris Wilson's avatar Chris Wilson :thinking:
Browse files

drm/i915/gem: Free the fence after a fence-chain lookup failure

If dma_fence_chain_find_seqno() reports an error, it does so in its
preamble before it disposes of the input fence. On handling the
error, we need to drop the reference to the fence.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2292


Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Cc: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: dc61199c ("drm/i915: add syncobj timeline support")
Reviewed-by: default avatarLionel Landwerlin <lionel.g.landwerlin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200806161056.17593-1-chris@chris-wilson.co.uk
parent 6eb4e328
No related branches found
No related tags found
No related merge requests found
...@@ -2289,6 +2289,7 @@ add_timeline_fence_array(struct i915_execbuffer *eb, ...@@ -2289,6 +2289,7 @@ add_timeline_fence_array(struct i915_execbuffer *eb,
if (err && !(user_fence.flags & I915_EXEC_FENCE_SIGNAL)) { if (err && !(user_fence.flags & I915_EXEC_FENCE_SIGNAL)) {
DRM_DEBUG("Syncobj handle missing requested point %llu\n", point); DRM_DEBUG("Syncobj handle missing requested point %llu\n", point);
dma_fence_put(fence);
drm_syncobj_put(syncobj); drm_syncobj_put(syncobj);
return err; return err;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment