summaryrefslogtreecommitdiff
path: root/extra/xf86-video-intel
diff options
context:
space:
mode:
authorNicolás Reynolds <fauno@endefensadelsl.org>2014-06-17 03:27:11 +0000
committerNicolás Reynolds <fauno@endefensadelsl.org>2014-06-17 03:27:11 +0000
commit6459b84bf754eda5323f40eb7af76dde65b63251 (patch)
tree81947a270848520d4cf2f9d1c5ce91ced54fcdff /extra/xf86-video-intel
parent942111e62628e9a5c4729563215b1cfb8911735e (diff)
Tue Jun 17 03:23:47 UTC 2014
Diffstat (limited to 'extra/xf86-video-intel')
-rw-r--r--extra/xf86-video-intel/PKGBUILD18
-rw-r--r--extra/xf86-video-intel/sna-avoid-discarding-damage.patch103
2 files changed, 5 insertions, 116 deletions
diff --git a/extra/xf86-video-intel/PKGBUILD b/extra/xf86-video-intel/PKGBUILD
index a72065549..7513ad375 100644
--- a/extra/xf86-video-intel/PKGBUILD
+++ b/extra/xf86-video-intel/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 209836 2014-04-05 17:16:44Z lcarlier $
+# $Id: PKGBUILD 215142 2014-06-14 17:44:53Z andyrtr $
# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=xf86-video-intel
-pkgver=2.99.911
-pkgrel=2
+pkgver=2.99.912
+pkgrel=1
arch=(i686 x86_64)
url="http://xorg.freedesktop.org/"
license=('custom')
@@ -23,16 +23,8 @@ provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
conflicts=('xorg-server<1.15.0' 'X-ABI-VIDEODRV_VERSION<15' 'X-ABI-VIDEODRV_VERSION>=16'
'xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xf86-video-i810' 'xf86-video-intel-legacy')
groups=('xorg-drivers' 'xorg')
-source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2
- sna-avoid-discarding-damage.patch)
-sha256sums=('4e7a68491bcc4d49912c5ec3ee688badce3f929ce1b7618ede9d8001827270d6'
- '122637d66a70d40b098b0bb732000c8227ea1dd155af0c71f605f87934822dcb')
-
-prepare() {
- cd ${pkgname}-${pkgver}
- # Fix FS#39747 (merged upstream)
- patch -Np1 -i ../sna-avoid-discarding-damage.patch
-}
+source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('7c8ffc492d59f34cac64093deb70717b4d9223cf416ecc6fa016ab2e8bde9501')
build() {
cd ${pkgname}-${pkgver}
diff --git a/extra/xf86-video-intel/sna-avoid-discarding-damage.patch b/extra/xf86-video-intel/sna-avoid-discarding-damage.patch
deleted file mode 100644
index 8e97ee591..000000000
--- a/extra/xf86-video-intel/sna-avoid-discarding-damage.patch
+++ /dev/null
@@ -1,103 +0,0 @@
-From 3310ee89c1f1a663de5f5b12b8125809a213996f Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Sat, 05 Apr 2014 11:18:31 +0000
-Subject: sna: Avoid discarding damage when applying WHOLE hint to pixmap migration
-
-Once again, we must be careful when promoting from a region to whole
-pixmap migration that we do not discard required damage.
-
-Fixes regression from
-commit 27ac9f574f65cbd535751c925e9b2e2d7c8a6b3a [2.99.911]
-Author: Chris Wilson <chris@chris-wilson.co.uk>
-Date: Thu Feb 27 08:33:52 2014 +0000
-
- sna: Avoid promoting region-to-whole migration and discarding damage
-
-Reported-by: gedgon@gmail.com
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=77063
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
----
-diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
-index 0116d54..71ba34d 100644
---- a/src/sna/sna_accel.c
-+++ b/src/sna/sna_accel.c
-@@ -2500,7 +2500,10 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable,
- flags |= MOVE_INPLACE_HINT;
- }
-
-- if (flags & MOVE_WHOLE_HINT && priv->gpu_damage == NULL)
-+ if ((flags & (MOVE_WHOLE_HINT | MOVE_READ)) == (MOVE_WHOLE_HINT | MOVE_READ))
-+ return _sna_pixmap_move_to_cpu(pixmap, flags);
-+
-+ if (flags & MOVE_WHOLE_HINT && priv->gpu_damage == NULL && priv->cpu_damage == NULL)
- return _sna_pixmap_move_to_cpu(pixmap, flags);
-
- if (priv->gpu_damage == NULL &&
-@@ -2527,22 +2530,18 @@ sna_drawable_move_region_to_cpu(DrawablePtr drawable,
- return _sna_pixmap_move_to_cpu(pixmap, flags);
- }
-
-- if ((flags & MOVE_READ) == 0 &&
-- priv->gpu_damage &&
-- region_subsumes_damage(region, priv->gpu_damage)) {
-- DBG(("%s: region [(%d, %d), (%d, %d)] subsumes damage [(%d,%d), (%d, %d)]\n",
-+ if (flags & MOVE_WHOLE_HINT) {
-+ DBG(("%s: region (%d, %d), (%d, %d) marked with WHOLE hint, pixmap %dx%d\n",
- __FUNCTION__,
- region->extents.x1,
- region->extents.y1,
- region->extents.x2,
- region->extents.y2,
-- priv->gpu_damage->extents.x1,
-- priv->gpu_damage->extents.y1,
-- priv->gpu_damage->extents.x2,
-- priv->gpu_damage->extents.y2));
-+ pixmap->drawable.width,
-+ pixmap->drawable.height));
- if (dx | dy)
- RegionTranslate(region, -dx, -dy);
-- return _sna_pixmap_move_to_cpu(pixmap, flags);
-+ return _sna_pixmap_move_to_cpu(pixmap, flags | MOVE_READ);
- }
-
- if (priv->move_to_gpu && !priv->move_to_gpu(sna, priv, MOVE_READ)) {
-@@ -4471,17 +4470,19 @@ try_upload_tiled_x(PixmapPtr pixmap, RegionRec *region,
- if (wedged(sna))
- return false;
-
-- DBG(("%s: bo? %d, can map? %d\n", __FUNCTION__,
-- priv->gpu_bo != NULL,
-- priv->gpu_bo ? kgem_bo_can_map__cpu(&sna->kgem, priv->gpu_bo, true) : 0));
--
- replaces = region->data == NULL &&
- w >= pixmap->drawable.width &&
- h >= pixmap->drawable.height;
-
-+ DBG(("%s: bo? %d, can map? %d, replaces? %d\n", __FUNCTION__,
-+ priv->gpu_bo != NULL,
-+ priv->gpu_bo ? kgem_bo_can_map__cpu(&sna->kgem, priv->gpu_bo, true) : 0,
-+ replaces));
-+
- if (priv->gpu_bo && (replaces || priv->gpu_bo->proxy)) {
- DBG(("%s: discarding cached upload proxy\n", __FUNCTION__));
- sna_pixmap_free_gpu(sna, priv);
-+ replaces = true; /* Mark it all GPU damaged afterwards */
- }
- assert(priv->gpu_bo == NULL || priv->gpu_bo->proxy == NULL);
-
-@@ -4616,8 +4617,11 @@ sna_put_zpixmap_blt(DrawablePtr drawable, GCPtr gc, RegionPtr region,
- return true;
-
- hint = MOVE_WRITE;
-- if (w == pixmap->drawable.width && h*stride > 4096)
-+ if (w == pixmap->drawable.width && (h+1)*stride > 65536) {
-+ DBG(("%s: large upload (%d bytes), marking WHOLE_HINT\n",
-+ __FUNCTION__, h*stride));
- hint |= MOVE_WHOLE_HINT;
-+ }
-
- if (!sna_drawable_move_region_to_cpu(&pixmap->drawable, region, hint))
- return false;
---
-cgit v0.9.0.2-2-gbebe
-