mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-06 02:24:14 +08:00
drm/vmwgfx: Fix fence event code
The commit "vmwgfx: Rework fence event action" introduced a number of bugs that are fixed with this commit: a) A forgotten return stateemnt. b) An if statement with identical branches. Cc: <stable@vger.kernel.org> Reported-by: Rob Clark <robdclark@gmail.com> Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Jakob Bornecrantz <jakob@vmware.com> Reviewed-by: Sinclair Yeh <syeh@vmware.com>
This commit is contained in:
parent
1f563a6a46
commit
89669e7a7f
@ -1087,6 +1087,8 @@ static int vmw_event_fence_action_create(struct drm_file *file_priv,
|
||||
if (ret != 0)
|
||||
goto out_no_queue;
|
||||
|
||||
return 0;
|
||||
|
||||
out_no_queue:
|
||||
event->base.destroy(&event->base);
|
||||
out_no_event:
|
||||
@ -1162,17 +1164,10 @@ int vmw_fence_event_ioctl(struct drm_device *dev, void *data,
|
||||
|
||||
BUG_ON(fence == NULL);
|
||||
|
||||
if (arg->flags & DRM_VMW_FE_FLAG_REQ_TIME)
|
||||
ret = vmw_event_fence_action_create(file_priv, fence,
|
||||
arg->flags,
|
||||
arg->user_data,
|
||||
true);
|
||||
else
|
||||
ret = vmw_event_fence_action_create(file_priv, fence,
|
||||
arg->flags,
|
||||
arg->user_data,
|
||||
true);
|
||||
|
||||
ret = vmw_event_fence_action_create(file_priv, fence,
|
||||
arg->flags,
|
||||
arg->user_data,
|
||||
true);
|
||||
if (unlikely(ret != 0)) {
|
||||
if (ret != -ERESTARTSYS)
|
||||
DRM_ERROR("Failed to attach event to fence.\n");
|
||||
|
Loading…
Reference in New Issue
Block a user