xserver-xorg-video-intel: Changes to 'ubuntu-utopic'
debian/changelog | 8 +++++
debian/patches/disable-dri3.diff | 30 ++++++++++++++++++++
debian/patches/series | 2 +
debian/patches/sna-fix-gen8-blt.diff | 51 +++++++++++++++++++++++++++++++++++
4 files changed, 91 insertions(+)
New commits:
commit 7ed9494b2649bd24e93e7adc91040bd7f2fe2737
Author: Timo Aaltonen <tjaalton@debian.org>
Date: Fri Dec 12 11:14:33 2014 +0200
release to utopic
diff --git a/debian/changelog b/debian/changelog
index 804a8d1..ba34487 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-intel (2:2.99.914-1~exp1ubuntu4.2) UNRELEASED; urgency=medium
+xserver-xorg-video-intel (2:2.99.914-1~exp1ubuntu4.2) utopic-proposed; urgency=medium
* Added patches:
- disable-dri3.diff: Disable DRI3. (LP: #1401784)
commit f1c06d9451a765980f8a8b65c8acbca5fdf67fcd
Author: Timo Aaltonen <tjaalton@debian.org>
Date: Fri Dec 12 11:02:16 2014 +0200
added patches
diff --git a/debian/changelog b/debian/changelog
index e89c63b..804a8d1 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xserver-xorg-video-intel (2:2.99.914-1~exp1ubuntu4.2) UNRELEASED; urgency=medium
+
+ * Added patches:
+ - disable-dri3.diff: Disable DRI3. (LP: #1401784)
+ - sna-fix-gen8-blt.diff: Fix GEN8 BLT with 4bit address. (LP: #1401788)
+
+ -- Timo Aaltonen <tjaalton@debian.org> Fri, 12 Dec 2014 10:53:54 +0200
+
xserver-xorg-video-intel (2:2.99.914-1~exp1ubuntu4.1) utopic-proposed; urgency=medium
* sna-use-vmask-in-3dstate-ps.diff: Fix GPU hang on BDW with xvideo.
diff --git a/debian/patches/disable-dri3.diff b/debian/patches/disable-dri3.diff
new file mode 100644
index 0000000..ed0ff3f
--- /dev/null
+++ b/debian/patches/disable-dri3.diff
@@ -0,0 +1,30 @@
+commit b6eeb7a1f7efa591504070b606be655e27e6e9c2
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Wed Nov 5 13:03:41 2014 +0000
+
+ Disable DRI3 by default
+
+ The external libraries, both in git, and especially shipping already
+ enabled in distributions, are buggy and lead to server crashes and
+ lockups. Caveat emptor.
+
+ Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
+
+diff --git a/configure.ac b/configure.ac
+index 328b4e9..cbfc472 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -339,10 +339,10 @@ AC_ARG_ENABLE(dri2,
+ [DRI2=$enableval],
+ [DRI2=yes])
+ AC_ARG_ENABLE(dri3,
+- AS_HELP_STRING([--disable-dri3],
+- [Disable DRI3 support [[default=yes]]]),
++ AS_HELP_STRING([--enable-dri3],
++ [Enable DRI3 support [[default=no]]]),
+ [DRI3=$enableval],
+- [DRI3=yes])
++ [DRI3=no])
+
+ AC_ARG_ENABLE(xvmc, AS_HELP_STRING([--disable-xvmc],
+ [Disable XvMC support [[default=yes]]]),
diff --git a/debian/patches/series b/debian/patches/series
index 7ca1bfe..e8f787e 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -6,3 +6,5 @@ xmir.patch
sna-freescreen.diff
fix-uxa-fglrx-stealing.diff
sna-use-vmask-in-3dstate-ps.diff
+disable-dri3.diff
+sna-fix-gen8-blt.diff
diff --git a/debian/patches/sna-fix-gen8-blt.diff b/debian/patches/sna-fix-gen8-blt.diff
new file mode 100644
index 0000000..2ec721d
--- /dev/null
+++ b/debian/patches/sna-fix-gen8-blt.diff
@@ -0,0 +1,51 @@
+commit 3a22b6f6d55a5b1e0a1c0a3d597996268ed439ad
+Author: Mika Kuoppala <mika.kuoppala@linux.intel.com>
+Date: Wed Nov 19 15:10:05 2014 +0200
+
+ sna: gen8 BLT broken when address has bit 4 set
+
+ With bit 4 set in address, the gen8 blitter fails and blits errorneously
+ into the cacheline preceeding the destination and similarly when reading from
+ the source, corrupting memory.
+
+ v2: Update the destination base offset pattern as revealed
+ by igt/tests/gem_userptr_blits/destination-bo-align
+
+ v3: Check base address as well
+
+ Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79053
+ Cc: Chris Wilson <chris@chris-wilson.co.uk>
+ Tested-by: xunx.fang@intel.com [v2]
+ Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
+
+diff --git a/src/sna/kgem.h b/src/sna/kgem.h
+index 6adae3b..3275b4f 100644
+--- a/src/sna/kgem.h
++++ b/src/sna/kgem.h
+@@ -551,6 +551,13 @@ static inline bool kgem_bo_blt_pitch_is_ok(struct kgem *kgem,
+ struct kgem_bo *bo)
+ {
+ int pitch = bo->pitch;
++
++ if (kgem->gen >= 0100 && pitch & (1 << 4)) { /* bdw is broken */
++ DBG(("%s: can not blt to handle=%d, pitch=%d\n",
++ __FUNCTION__, bo->handle, pitch));
++ return false;
++ }
++
+ if (kgem->gen >= 040 && bo->tiling)
+ pitch /= 4;
+ if (pitch > MAXSHORT) {
+@@ -573,6 +580,12 @@ static inline bool kgem_bo_can_blt(struct kgem *kgem,
+ return false;
+ }
+
++ if (kgem->gen >= 0100 && bo->proxy && bo->delta & (1 << 4)) {
++ DBG(("%s: can not blt to handle=%d, delta=%d\n",
++ __FUNCTION__, bo->handle, bo->delta));
++ return false;
++ }
++
+ return kgem_bo_blt_pitch_is_ok(kgem, bo);
+ }
+
Reply to: