diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2021-12-01 20:48:31 -0800 |
---|---|---|
committer | John Harrison <John.C.Harrison@Intel.com> | 2021-12-03 11:47:29 -0800 |
commit | 8722ded49ce8a0c706b373e8087eb810684962ff (patch) | |
tree | 93fa917f752e2d4c0c89178474ae3cf8bdae8cf8 /drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | |
parent | drm/i915/gen11: Moving WAs to icl_gt_workarounds_init() (diff) | |
download | linux-dev-8722ded49ce8a0c706b373e8087eb810684962ff.tar.xz linux-dev-8722ded49ce8a0c706b373e8087eb810684962ff.zip |
drm/i915: Fix error pointer dereference in i915_gem_do_execbuffer()
Originally "out_fence" was set using out_fence = sync_file_create() but
which returns NULL, but now it is set with out_fence = eb_requests_create()
which returns error pointers. The error path needs to be modified to
avoid an Oops in the "goto err_request;" path.
Fixes: 544460c33821 ("drm/i915: Multi-BB execbuf")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Signed-off-by: John Harrison <John.C.Harrison@Intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20211202044831.29583-1-matthew.brost@intel.com
Diffstat (limited to '')
-rw-r--r-- | drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c index a0b80f33249a..60ee60f7bb09 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c @@ -3366,6 +3366,7 @@ i915_gem_do_execbuffer(struct drm_device *dev, out_fence = eb_requests_create(&eb, in_fence, out_fence_fd); if (IS_ERR(out_fence)) { err = PTR_ERR(out_fence); + out_fence = NULL; if (eb.requests[0]) goto err_request; else |