debian/changelog                                                        |    8 
+
 debian/patches/107-submit-batch-buffers-from-flush-callback-chain.patch |   66 
++++++++++
 debian/patches/series                                                   |    1 
 3 files changed, 75 insertions(+)

New commits:
commit 96ba0f7c582afe17cc217ee14062c2690f226099
Author: Robert Hooker <sarv...@ubuntu.com>
Date:   Mon Oct 4 11:07:49 2010 -0400

    Backport a commit from 2.13 to fix text rendering issues with compiz.

diff --git a/debian/changelog b/debian/changelog
index 56d4a66..6a626fa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xserver-xorg-video-intel (2:2.12.0-1ubuntu5.1) maverick; urgency=low
+
+  * Add 107-submit-batch-buffers-from-flush-callback-chain.patch:
+    Fixes a text rendering issue in many applications when compiz is
+    enabled. Backport of upstream commit 69d65f918. (LP: #644943, #635258)
+
+ -- Robert Hooker <robert.hoo...@canonical.com>  Mon, 04 Oct 2010 10:53:59 
-0400
+
 xserver-xorg-video-intel (2:2.12.0-1ubuntu5) maverick; urgency=low
 
   [ Robert Hooker ]
diff --git 
a/debian/patches/107-submit-batch-buffers-from-flush-callback-chain.patch 
b/debian/patches/107-submit-batch-buffers-from-flush-callback-chain.patch
new file mode 100644
index 0000000..c8f86b7
--- /dev/null
+++ b/debian/patches/107-submit-batch-buffers-from-flush-callback-chain.patch
@@ -0,0 +1,66 @@
+diff -upNr xf86-video-intel-2.12.0.orign/src/i830_driver.c 
xf86-video-intel-2.12.0/src/i830_driver.c
+--- xf86-video-intel-2.12.0.orign/src/i830_driver.c    2010-09-13 
20:59:08.722629729 +0200
++++ xf86-video-intel-2.12.0/src/i830_driver.c  2010-09-13 20:59:46.783566903 
+0200
+@@ -865,16 +865,8 @@ I830BlockHandler(int i, pointer blockDat
+       intel->BlockHandler = screen->BlockHandler;
+       screen->BlockHandler = I830BlockHandler;
+ 
+-      if (scrn->vtSema) {
+-              /* Emit a flush of the rendering cache, or on the 965 and beyond
+-               * rendering results may not hit the framebuffer until 
significantly
+-               * later.
+-               */
+-              intel_batch_submit(scrn,
+-                                 intel->need_mi_flush ||
+-                                 !list_is_empty(&intel->flush_pixmaps));
++      if (scrn->vtSema == TRUE)
+               drmCommandNone(intel->drmSubFD, DRM_I915_GEM_THROTTLE);
+-      }
+ 
+       i830_uxa_block_handler(screen);
+ 
+@@ -1072,6 +1064,24 @@ I830UeventFini(ScrnInfoPtr scrn)
+     }
+ }
+ 
++static void
++intel_flush_callback(CallbackListPtr *list,
++                   pointer user_data, pointer call_data)
++{
++      ScrnInfoPtr scrn = user_data;
++      intel_screen_private *intel = intel_get_screen_private(scrn);
++
++      if (scrn->vtSema) {
++              /* Emit a flush of the rendering cache, or on the 965
++               * and beyond rendering results may not hit the
++               * framebuffer until significantly later.
++               */
++              intel_batch_submit(scrn,
++                                 intel->need_mi_flush ||
++                                 !list_is_empty(&intel->flush_pixmaps));
++      }
++}
++
+ static Bool
+ I830ScreenInit(int scrnIndex, ScreenPtr screen, int argc, char **argv)
+ {
+@@ -1248,6 +1258,9 @@ I830ScreenInit(int scrnIndex, ScreenPtr 
+       intel->BlockHandler = screen->BlockHandler;
+       screen->BlockHandler = I830BlockHandler;
+ 
++      if (!AddCallback(&FlushCallback, intel_flush_callback, scrn))
++              return FALSE;
++
+       screen->SaveScreen = xf86SaveScreen;
+       intel->CloseScreen = screen->CloseScreen;
+       screen->CloseScreen = I830CloseScreen;
+@@ -1402,6 +1415,8 @@ static Bool I830CloseScreen(int scrnInde
+               intel->front_buffer = NULL;
+       }
+ 
++      DeleteCallback(&FlushCallback, intel_flush_callback, scrn);
++
+       intel_batch_teardown(scrn);
+ 
+       if (IS_I965G(intel))
+
diff --git a/debian/patches/series b/debian/patches/series
index 478c050..2fa3dd7 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -5,3 +5,4 @@
 104_sandybridge_id_update.patch
 105_sandybridge_dri_disable.patch
 106_backport_vblank_on_server_regenerate_fix.patch
+107-submit-batch-buffers-from-flush-callback-chain.patch


-- 
To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/e1p2mgi-00040u...@alioth.debian.org

Reply via email to