• Ray Strode's avatar
    drm/qxl: reapply cursor after resetting primary · 9428088c
    Ray Strode authored
    QXL associates mouse state with its primary plane.
    
    Destroying a primary plane and putting a new one in place has the side
    effect of destroying the cursor as well.
    
    This commit changes the driver to reapply the cursor any time a new
    primary is created. It achieves this by keeping a reference to the
    cursor bo on the qxl_crtc struct.
    
    This fix is very similar to
    
    commit 4532b241 ("drm/qxl: reapply cursor after SetCrtc calls")
    
    which got implicitly reverted as part of implementing the atomic
    modeset feature.
    
    Cc: Gerd Hoffmann <kraxel@redhat.com>
    Cc: Dave Airlie <airlied@redhat.com>
    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1512097
    Fixes: 1277eed5 ("drm: qxl: Atomic phase 1: convert cursor to universal plane")
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarRay Strode <rstrode@redhat.com>
    Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
    9428088c
qxl_display.c 35.5 KB