From: Chris Wilson Date: Tue, 25 Feb 2020 08:22:26 +0000 (+0000) Subject: drm/i915/gem: Cleanup shadow batch after I915_EXEC_SECURE X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=2c59fd06a062b86210e4d4c637501cb90517fd2b;p=openwrt%2Fstaging%2Fblogic.git drm/i915/gem: Cleanup shadow batch after I915_EXEC_SECURE Tidy up after a call to eb_parse() if a later bind fails. Closes: https://gitlab.freedesktop.org/drm/intel/issues/1312 Signed-off-by: Chris Wilson Reviewed-by: Matthew Auld Link: https://patchwork.freedesktop.org/patch/msgid/20200225082233.274530-4-chris@chris-wilson.co.uk --- diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c index 87fa5f42c39a..4f9c1f5a4ded 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c @@ -2713,7 +2713,7 @@ i915_gem_do_execbuffer(struct drm_device *dev, vma = i915_gem_object_ggtt_pin(eb.batch->obj, NULL, 0, 0, 0); if (IS_ERR(vma)) { err = PTR_ERR(vma); - goto err_vma; + goto err_parse; } eb.batch = vma; @@ -2792,6 +2792,7 @@ err_request: err_batch_unpin: if (eb.batch_flags & I915_DISPATCH_SECURE) i915_vma_unpin(eb.batch); +err_parse: if (eb.batch->private) intel_engine_pool_put(eb.batch->private); err_vma: