]> git.baikalelectronics.ru Git - kernel.git/commit
drm/qxl: reapply cursor after resetting primary
authorRay Strode <rstrode@redhat.com>
Mon, 27 Nov 2017 21:50:10 +0000 (16:50 -0500)
committerDave Airlie <airlied@redhat.com>
Fri, 8 Dec 2017 03:37:02 +0000 (13:37 +1000)
commitdf6006ff9f3ed2278bd138b8eb24cd05dcb57650
tree9f5823f5eb5093c064a1d9ffb577cffcf4ff7e87
parent0f28bb0a41df13a57d95eb0c099c37088cbafe95
drm/qxl: reapply cursor after resetting primary

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 b2ae456ceed3 ("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: 03c0c1a11e1c ("drm: qxl: Atomic phase 1: convert cursor to universal plane")
Cc: stable@vger.kernel.org
Signed-off-by: Ray Strode <rstrode@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/qxl/qxl_display.c
drivers/gpu/drm/qxl/qxl_drv.h