[PATCH] modesetting: Fix software cursor fallback

Michel Dänzer michel at daenzer.net
Fri May 1 17:54:59 PDT 2015


On 02.05.2015 00:43, Adel Gadllah wrote:
> The code in drmmode_set_cursor does not properly handle the case where
> drmModeSetCursor2 returns any other error than EINVAL and silently fails to set
> a cursor.
> 
> So only return when the drmModeSetCursor2 succeeds (i.e returns 0) and disable
> the cursor2 usage on EINVAL.
> 
> References: https://bugzilla.redhat.com/show_bug.cgi?id=1205725
> Signed-off-by: Adel Gadllah <adel.gadllah at gmail.com>
> ---
>  hw/xfree86/drivers/modesetting/drmmode_display.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c
> index 824500b..912abda 100644
> --- a/hw/xfree86/drivers/modesetting/drmmode_display.c
> +++ b/hw/xfree86/drivers/modesetting/drmmode_display.c
> @@ -396,10 +396,10 @@ drmmode_set_cursor(xf86CrtcPtr crtc)
>              drmModeSetCursor2(drmmode->fd, drmmode_crtc->mode_crtc->crtc_id,
>                                handle, ms->cursor_width, ms->cursor_height,
>                                cursor->bits->xhot, cursor->bits->yhot);
> +        if (!ret)
> +            return;
>          if (ret == -EINVAL)
>              use_set_cursor2 = FALSE;
> -        else
> -            return;
>      }
>  
>      ret = drmModeSetCursor(drmmode->fd, drmmode_crtc->mode_crtc->crtc_id, handle,
> 

Reviewed-by: Michel Dänzer <michel at daenzer.net>


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the xorg-devel mailing list