diff options
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c index 0c67924ca80c..1ef7ec4f38fe 100644 --- a/drivers/gpu/drm/i915/i915_gem.c +++ b/drivers/gpu/drm/i915/i915_gem.c | |||
@@ -3742,6 +3742,8 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data, | |||
3742 | if (object_list[i] == NULL) { | 3742 | if (object_list[i] == NULL) { |
3743 | DRM_ERROR("Invalid object handle %d at index %d\n", | 3743 | DRM_ERROR("Invalid object handle %d at index %d\n", |
3744 | exec_list[i].handle, i); | 3744 | exec_list[i].handle, i); |
3745 | /* prevent error path from reading uninitialized data */ | ||
3746 | args->buffer_count = i + 1; | ||
3745 | ret = -EBADF; | 3747 | ret = -EBADF; |
3746 | goto err; | 3748 | goto err; |
3747 | } | 3749 | } |
@@ -3750,6 +3752,8 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data, | |||
3750 | if (obj_priv->in_execbuffer) { | 3752 | if (obj_priv->in_execbuffer) { |
3751 | DRM_ERROR("Object %p appears more than once in object list\n", | 3753 | DRM_ERROR("Object %p appears more than once in object list\n", |
3752 | object_list[i]); | 3754 | object_list[i]); |
3755 | /* prevent error path from reading uninitialized data */ | ||
3756 | args->buffer_count = i + 1; | ||
3753 | ret = -EBADF; | 3757 | ret = -EBADF; |
3754 | goto err; | 3758 | goto err; |
3755 | } | 3759 | } |