debian/changelog                                          |   12 +
 debian/patches/113_remove_broken_max_base_addresses.patch |   46 +++++
 debian/patches/114_warnings_cleanup_part_2.patch          |  115 ++++++++++++++
 debian/patches/series                                     |    2 
 4 files changed, 172 insertions(+), 3 deletions(-)

New commits:
commit 56ab075f88ed70fca39233f760cdf2452df836dc
Author: Bryce Harrington <br...@canonical.com>
Date:   Mon Feb 14 15:55:13 2011 -0800

    * 111_fix_clipped_window_plane_offset.patch,
    * 113_remove_broken_max_base_addresses.patch: Fixes GPU lockup during
      login with "Bad length (4) in MI_DISPLAY_BUFFER_INFO, [3, 3]" error
      messages listed in the gpu dump text.
      (LP: #710321)
    * 114_warnings_cleanup_part_2.patch: Additional warnings cleanup to the
      xvmc code, cherrypicked from upstream commit ae8877e3.

diff --git a/debian/changelog b/debian/changelog
index 17bfc69..45f47bc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,12 +1,18 @@
 xserver-xorg-video-intel (2:2.14.0-1ubuntu8) natty; urgency=low
 
-  * Add 111_fix_clipped_window_plane_offset.patch,
+  * 111_fix_clipped_window_plane_offset.patch,
     112_fix_error_in_4c4ad555.patch: Fixes issue where vertical green line
     and strange colors shows up when playing gstreamer with certain
     videos, when dragged.
     (LP: #460677)
-
- -- Bryce Harrington <br...@ubuntu.com>  Mon, 14 Feb 2011 15:03:28 -0800
+  * 113_remove_broken_max_base_addresses.patch: Fixes GPU lockup during
+    login with "Bad length (4) in MI_DISPLAY_BUFFER_INFO, [3, 3]" error
+    messages listed in the gpu dump text.
+    (LP: #710321)
+  * 114_warnings_cleanup_part_2.patch: Additional warnings cleanup to the
+    xvmc code, cherrypicked from upstream commit ae8877e3.
+
+ -- Bryce Harrington <br...@ubuntu.com>  Mon, 14 Feb 2011 15:45:48 -0800
 
 xserver-xorg-video-intel (2:2.14.0-1ubuntu7) natty; urgency=low
 
diff --git a/debian/patches/113_remove_broken_max_base_addresses.patch 
b/debian/patches/113_remove_broken_max_base_addresses.patch
new file mode 100644
index 0000000..72df601
--- /dev/null
+++ b/debian/patches/113_remove_broken_max_base_addresses.patch
@@ -0,0 +1,46 @@
+From 23f9b14df7c102c1036134835dd5d1a508059858 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <ch...@chris-wilson.co.uk>
+Date: Sat, 12 Feb 2011 10:42:34 +0000
+Subject: i965: Remove broken maximum base addresses from video
+
+WRONG.
+
+The hardware was never limited to 0x1000000 and the kernel can quite
+rightly place objects above that limit. Specifying such had no relation
+to reality, so why did we do it? TWICE!
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=34017
+Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
+---
+diff --git a/src/i965_video.c b/src/i965_video.c
+index a7374a2..e16a575 100644
+--- a/src/i965_video.c
++++ b/src/i965_video.c
+@@ -821,20 +821,20 @@ i965_emit_video_setup(ScrnInfoPtr scrn, drm_intel_bo * 
surface_state_binding_tab
+               OUT_BATCH(0 | BASE_ADDRESS_MODIFY);     /* media base addr, 
don't care */
+               OUT_BATCH(0 | BASE_ADDRESS_MODIFY);     /* Instruction base 
address */
+               /* general state max addr, disabled */
+-              OUT_BATCH(0x10000000 | BASE_ADDRESS_MODIFY);
++              OUT_BATCH(0 | BASE_ADDRESS_MODIFY);
+               /* media object state max addr, disabled */
+-              OUT_BATCH(0x10000000 | BASE_ADDRESS_MODIFY);
++              OUT_BATCH(0 | BASE_ADDRESS_MODIFY);
+               /* Instruction max addr, disabled */
+-              OUT_BATCH(0x10000000 | BASE_ADDRESS_MODIFY);
++              OUT_BATCH(0 | BASE_ADDRESS_MODIFY);
+       } else {
+               OUT_BATCH(BRW_STATE_BASE_ADDRESS | 4);
+               OUT_BATCH(0 | BASE_ADDRESS_MODIFY);     /* Generate state base 
address */
+               OUT_RELOC(surface_state_binding_table_bo, 
I915_GEM_DOMAIN_INSTRUCTION, 0, BASE_ADDRESS_MODIFY); /* Surface state base 
address */
+               OUT_BATCH(0 | BASE_ADDRESS_MODIFY);     /* media base addr, 
don't care */
+               /* general state max addr, disabled */
+-              OUT_BATCH(0x10000000 | BASE_ADDRESS_MODIFY);
++              OUT_BATCH(0 | BASE_ADDRESS_MODIFY);
+               /* media object state max addr, disabled */
+-              OUT_BATCH(0x10000000 | BASE_ADDRESS_MODIFY);
++              OUT_BATCH(0 | BASE_ADDRESS_MODIFY);
+       }
+ 
+       /* Set system instruction pointer */
+--
+cgit v0.8.3-6-g21f6
diff --git a/debian/patches/114_warnings_cleanup_part_2.patch 
b/debian/patches/114_warnings_cleanup_part_2.patch
new file mode 100644
index 0000000..5b60427
--- /dev/null
+++ b/debian/patches/114_warnings_cleanup_part_2.patch
@@ -0,0 +1,115 @@
+From ae8877e30707cae586565b4deee4c7fd9ac7d3ed Mon Sep 17 00:00:00 2001
+From: Cyril Brulebois <k...@debian.org>
+Date: Mon, 31 Jan 2011 05:22:35 +0000
+Subject: xvmc: Get rid of unused variables.
+
+Signed-off-by: Cyril Brulebois <k...@debian.org>
+Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
+---
+diff --git a/src/xvmc/i915_xvmc.c b/src/xvmc/i915_xvmc.c
+index 21a1149..fbd4555 100644
+--- a/src/xvmc/i915_xvmc.c
++++ b/src/xvmc/i915_xvmc.c
+@@ -391,7 +391,6 @@ static void i915_mc_static_indirect_state_set(XvMCContext 
* context,
+       i915XvMCContext *pI915XvMC = (i915XvMCContext *) context->privData;
+       struct intel_xvmc_surface *intel_surf = dest->privData;
+       struct i915_mc_static_indirect_state_buffer *buffer_info;
+-      unsigned int w = dest->width;
+ 
+       drm_intel_gem_bo_map_gtt(pI915XvMC->sis_bo);
+       buffer_info = pI915XvMC->sis_bo->virtual;
+@@ -688,7 +687,7 @@ static void i915_mc_load_indirect_render_emit(XvMCContext 
* context)
+ {
+       i915XvMCContext *pI915XvMC = (i915XvMCContext *) context->privData;
+       int mem_select;
+-      uint32_t load_indirect, buffer_address;
++      uint32_t load_indirect;
+       BATCH_LOCALS;
+ 
+       BEGIN_BATCH(5);
+diff --git a/src/xvmc/intel_batchbuffer.c b/src/xvmc/intel_batchbuffer.c
+index 337b2ce..2b5526c 100644
+--- a/src/xvmc/intel_batchbuffer.c
++++ b/src/xvmc/intel_batchbuffer.c
+@@ -64,8 +64,6 @@ static void i965_end_batch(void)
+ 
+ Bool intelInitBatchBuffer(void)
+ {
+-      int i;
+-
+       if ((xvmc_driver->batch.buf =
+            drm_intel_bo_alloc(xvmc_driver->bufmgr,
+                               "batch buffer", BATCH_SIZE, 0x1000)) == NULL) {
+diff --git a/src/xvmc/intel_xvmc.c b/src/xvmc/intel_xvmc.c
+index 6cbec80..339c133 100644
+--- a/src/xvmc/intel_xvmc.c
++++ b/src/xvmc/intel_xvmc.c
+@@ -105,8 +105,6 @@ unsigned int mb_bytes_420[] = {
+ 
+ void LOCK_HARDWARE(drm_context_t ctx)
+ {
+-      char __ret = 0;
+-
+       PPTHREAD_MUTEX_LOCK();
+       assert(!xvmc_driver->locked);
+ 
+@@ -218,11 +216,6 @@ _X_EXPORT Status XvMCCreateContext(Display * display, 
XvPortID port,
+       int error_base;
+       int event_base;
+       int priv_count;
+-      int isCapable;
+-      int screen = DefaultScreen(display);
+-      intel_xvmc_context_ptr intel_ctx;
+-      int fd;
+-      char *driverName = NULL, *deviceName = NULL;
+ 
+       /* Verify Obvious things first */
+       if (!display || !context)
+@@ -482,7 +475,6 @@ _X_EXPORT Status XvMCCreateBlocks(Display * display, 
XvMCContext * context,
+                                 unsigned int num_blocks,
+                                 XvMCBlockArray * block)
+ {
+-      Status ret;
+       if (!display || !context || !num_blocks || !block)
+               return BadValue;
+ 
+@@ -505,7 +497,6 @@ _X_EXPORT Status XvMCCreateBlocks(Display * display, 
XvMCContext * context,
+  */
+ _X_EXPORT Status XvMCDestroyBlocks(Display * display, XvMCBlockArray * block)
+ {
+-      Status ret;
+       if (!display || !block)
+               return BadValue;
+ 
+@@ -679,7 +670,6 @@ _X_EXPORT Status XvMCPutSurface(Display * display, 
XvMCSurface * surface,
+ _X_EXPORT Status XvMCSyncSurface(Display * display, XvMCSurface * surface)
+ {
+       Status ret;
+-      int stat = 0;
+ 
+       if (!display || !surface)
+               return XvMCBadSurface;
+@@ -739,9 +729,6 @@ _X_EXPORT Status XvMCGetSurfaceStatus(Display * display, 
XvMCSurface * surface,
+  */
+ _X_EXPORT Status XvMCHideSurface(Display * display, XvMCSurface * surface)
+ {
+-      int stat = 0;
+-      Status ret;
+-
+       if (!display || !surface)
+               return XvMCBadSurface;
+ 
+diff --git a/src/xvmc/xvmc_vld.c b/src/xvmc/xvmc_vld.c
+index addc7c9..d72e105 100644
+--- a/src/xvmc/xvmc_vld.c
++++ b/src/xvmc/xvmc_vld.c
+@@ -785,7 +785,6 @@ static Status begin_surface(Display * display, XvMCContext 
* context,
+                           XvMCSurface * future,
+                           const XvMCMpegControl * control)
+ {
+-      struct i965_xvmc_contex *i965_ctx;
+       struct intel_xvmc_surface *priv_target, *priv_past, *priv_future;
+       intel_xvmc_context_ptr intel_ctx = context->privData;
+       Status ret;
+--
+cgit v0.8.3-6-g21f6
diff --git a/debian/patches/series b/debian/patches/series
index 42e6827..6bc1536 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -5,3 +5,5 @@
 110_warnings_cleanup.patch
 111_fix_clipped_window_plane_offset.patch
 112_fix_error_in_4c4ad555.patch
+113_remove_broken_max_base_addresses.patch
+114_warnings_cleanup_part_2.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/e1pp8gi-0006z3...@alioth.debian.org

Reply via email to