[PATCH] drm/vmwgfx: Propagate error on failed ioctl

Zack Rusin zackr at vmware.com
Fri Mar 25 19:28:12 UTC 2022


On Sun, 2022-03-13 at 06:06 +0100, Philipp Sieweck wrote:
> The cases of vmw_user_bo_synccpu_grab failing with -ERESTARTSYS or -
> EBUSY
> are handled in vmw_user_bo_synccpu_ioctl by not printing an error
> message.
> However, the error value gets discarded, indicating success. This
> leads
> to rendering glitches and a reported drm error on the next ioctl call
> to
> release the handle.
> 
> This patch propagates the error value from vmw_user_synccpu_grab.
> 
> Signed-off-by: Philipp Sieweck <psi at informatik.uni-kiel.de>

Hi, Philipp.

Thanks for the patch. Some questions below.

> ---
>  drivers/gpu/drm/vmwgfx/vmwgfx_bo.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_bo.c
> b/drivers/gpu/drm/vmwgfx/vmwgfx_bo.c
> index 31aecc46624b..81fe4dc5e6ab 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_bo.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_bo.c
> @@ -621,6 +621,8 @@ int vmw_user_bo_synccpu_ioctl(struct drm_device
> *dev, void *data,
>                                   (unsigned int) arg->handle);
>                         return ret;
>                 }
> +               if (unlikely(ret != 0))
> +                       return ret;
>                 break;

I'd just break apart the condition above rather than have two if ret !=
0. What apps do you see glitches in as a result of this? Can you
reproduce it?

z


More information about the dri-devel mailing list