From 3427bca5308b9f649e00e97060d757a0c598d4b4 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Wed, 9 Aug 2017 09:39:33 -0700 Subject: [PATCH] 4.12-stable patches added patches: drm-vmwgfx-fix-cursor-hotspot-issue-with-wayland-on-fedora.patch --- ...hotspot-issue-with-wayland-on-fedora.patch | 53 +++++++++++++++++++ queue-4.12/series | 1 + 2 files changed, 54 insertions(+) create mode 100644 queue-4.12/drm-vmwgfx-fix-cursor-hotspot-issue-with-wayland-on-fedora.patch diff --git a/queue-4.12/drm-vmwgfx-fix-cursor-hotspot-issue-with-wayland-on-fedora.patch b/queue-4.12/drm-vmwgfx-fix-cursor-hotspot-issue-with-wayland-on-fedora.patch new file mode 100644 index 00000000000..b70555397a9 --- /dev/null +++ b/queue-4.12/drm-vmwgfx-fix-cursor-hotspot-issue-with-wayland-on-fedora.patch @@ -0,0 +1,53 @@ +From 14979adb0294f04cf6fbbb81555acff9ec1e7c9c Mon Sep 17 00:00:00 2001 +From: Sinclair Yeh +Date: Mon, 17 Jul 2017 23:26:21 -0700 +Subject: drm/vmwgfx: Fix cursor hotspot issue with Wayland on Fedora +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Sinclair Yeh + +commit 14979adb0294f04cf6fbbb81555acff9ec1e7c9c upstream. + +Parts of commit <8fbf9d92a7bc> (“drm/vmwgfx: Implement the +cursor_set2 callback v2”) were not moved over when we started +atomic mode set development because at that time the DRM did +not support cursor hotspots in the fb struct. + +This patch fixes what was not moved over. + +Signed-off-by: Sinclair Yeh +Reviewed-by: Brian Paul +Tested-by: Brian Paul +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c ++++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c +@@ -384,6 +384,12 @@ vmw_du_cursor_plane_atomic_update(struct + + hotspot_x = du->hotspot_x; + hotspot_y = du->hotspot_y; ++ ++ if (plane->fb) { ++ hotspot_x += plane->fb->hot_x; ++ hotspot_y += plane->fb->hot_y; ++ } ++ + du->cursor_surface = vps->surf; + du->cursor_dmabuf = vps->dmabuf; + +@@ -411,6 +417,9 @@ vmw_du_cursor_plane_atomic_update(struct + vmw_cursor_update_position(dev_priv, true, + du->cursor_x + hotspot_x, + du->cursor_y + hotspot_y); ++ ++ du->core_hotspot_x = hotspot_x - du->hotspot_x; ++ du->core_hotspot_y = hotspot_y - du->hotspot_y; + } else { + DRM_ERROR("Failed to update cursor image\n"); + } diff --git a/queue-4.12/series b/queue-4.12/series index 555766e0368..6fd42fba131 100644 --- a/queue-4.12/series +++ b/queue-4.12/series @@ -103,3 +103,4 @@ sparc64-measure-receiver-forward-progress-to-avoid-send-mondo-timeout.patch sparc64-prevent-perf-from-running-during-super-critical-sections.patch sparc64-register-hugepages-during-arch-init.patch sparc64-fix-exception-handling-in-ultrasparc-iii-memcpy.patch +drm-vmwgfx-fix-cursor-hotspot-issue-with-wayland-on-fedora.patch -- 2.47.3