summaryrefslogtreecommitdiff
path: root/pcr/xf86-video-qxl/0004-Fix-drawable-mm_time-with-KMS.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pcr/xf86-video-qxl/0004-Fix-drawable-mm_time-with-KMS.patch')
-rw-r--r--pcr/xf86-video-qxl/0004-Fix-drawable-mm_time-with-KMS.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/pcr/xf86-video-qxl/0004-Fix-drawable-mm_time-with-KMS.patch b/pcr/xf86-video-qxl/0004-Fix-drawable-mm_time-with-KMS.patch
new file mode 100644
index 000000000..3e35df5a6
--- /dev/null
+++ b/pcr/xf86-video-qxl/0004-Fix-drawable-mm_time-with-KMS.patch
@@ -0,0 +1,30 @@
+From e765cc5ea35bfab017201307b280368400cf1d10 Mon Sep 17 00:00:00 2001
+From: Javier Celaya <javier.celaya@flexvdi.com>
+Date: Fri, 19 Jun 2015 14:05:10 +0200
+Subject: [PATCH 3/3] Fix drawable mm_time with KMS
+
+When KMS is enabled, the mm_time value of a QXLDrawable is undefined.
+This results in severe synchronization problems. This patch sets it to
+zero to force the spice-server to use the local clock.
+
+Signed-off-by: Christian Hesse <mail@eworm.de>
+---
+ src/qxl_surface.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/qxl_surface.c b/src/qxl_surface.c
+index c5e76e0..6fc2146 100644
+--- a/src/qxl_surface.c
++++ b/src/qxl_surface.c
+@@ -86,6 +86,8 @@ make_drawable (qxl_screen_t *qxl, qxl_surface_t *surf, uint8_t type,
+
+ if (!qxl->kms_enabled)
+ drawable->mm_time = qxl->rom->mm_clock;
++ else
++ drawable->mm_time = 0;
+
+ qxl->bo_funcs->bo_unmap(draw_bo);
+ return draw_bo;
+--
+2.6.2
+