[xorg-x11-drv-intel/f18] Fix uxa bug that trips up ilk on 3.7 kernels

Dave Airlie airlied at fedoraproject.org
Wed Jan 2 07:41:15 UTC 2013


commit 498ec7807ec48e6f58cd31bfaadda25a460dea2d
Author: Dave Airlie <airlied at gmail.com>
Date:   Wed Jan 2 17:40:47 2013 +1000

    Fix uxa bug that trips up ilk on 3.7 kernels

 ...ign-surface-allocations-to-even-tile-rows.patch |   33 ++++++++++++++++++++
 xorg-x11-drv-intel.spec                            |    7 +++-
 2 files changed, 39 insertions(+), 1 deletions(-)
---
diff --git a/0001-uxa-Align-surface-allocations-to-even-tile-rows.patch b/0001-uxa-Align-surface-allocations-to-even-tile-rows.patch
new file mode 100644
index 0000000..302e0b8
--- /dev/null
+++ b/0001-uxa-Align-surface-allocations-to-even-tile-rows.patch
@@ -0,0 +1,33 @@
+From 736b89504a32239a0c7dfb5961c1b8292dd744bd Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Sun, 30 Dec 2012 10:32:18 +0000
+Subject: [PATCH] uxa: Align surface allocations to even tile rows
+
+Align surface sizes to an even number of tile rows to cater for sampler
+prefetch. If we read beyond the last page we may catch the PTE in a
+state of flux and trigger a GPU hang. Also detected by enabling invalid
+PTE access checking.
+
+References: https://bugs.freedesktop.org/show_bug.cgi?id=56916
+References: https://bugs.freedesktop.org/show_bug.cgi?id=55984
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+---
+ src/intel_uxa.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/intel_uxa.c b/src/intel_uxa.c
+index f5ac0a6..2f14173 100644
+--- a/src/intel_uxa.c
++++ b/src/intel_uxa.c
+@@ -209,7 +209,7 @@ intel_uxa_pixmap_compute_size(PixmapPtr pixmap,
+ 			tile_height = 8;
+ 		else
+ 			tile_height = 32;
+-		aligned_h = ALIGN(h, tile_height);
++		aligned_h = ALIGN(h, 2*tile_height);
+ 
+ 		*stride = intel_get_fence_pitch(intel,
+ 						ALIGN(pitch, 512),
+-- 
+1.8.0.2
+
diff --git a/xorg-x11-drv-intel.spec b/xorg-x11-drv-intel.spec
index de0fa63..396a359 100644
--- a/xorg-x11-drv-intel.spec
+++ b/xorg-x11-drv-intel.spec
@@ -18,7 +18,7 @@
 Summary:   Xorg X11 Intel video driver
 Name:      xorg-x11-drv-intel
 Version:   2.20.16
-Release:   1%{?gitrev}%{?dist}
+Release:   2%{?gitrev}%{?dist}
 URL:       http://www.x.org
 License:   MIT
 Group:     User Interface/X Hardware Support
@@ -32,6 +32,7 @@ Source1:    make-intel-gpu-tools-snapshot.sh
 Source3:    intel-gpu-tools-%{gputoolsdate}.tar.bz2
 Source4:    make-git-snapshot.sh
 
+Patch0: 0001-uxa-Align-surface-allocations-to-even-tile-rows.patch
 
 ExclusiveArch: %{ix86} x86_64 ia64
 
@@ -76,6 +77,7 @@ Debugging tools for Intel graphics chips
 
 %prep
 %setup -q -n xf86-video-intel-%{?gitdate:%{gitdate}}%{!?gitdate:%{dirsuffix}} -b3
+%patch0 -p1 -b .uxafix
 
 %build
  
@@ -142,6 +144,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/intel_*.1*
 
 %changelog
+* Wed Jan 02 2013 Dave Airlie <airlied at redhat.com> 2.20.16-2
+- Fix uxa bug that trips up ilk on 3.7 kernels
+
 * Mon Dec 17 2012 Adam Jackson <ajax at redhat.com> 2.20.16-1
 - intel 2.20.16
 


More information about the scm-commits mailing list