[arch-commits] Commit in xf86-video-intel/repos (12 files)

Laurent Carlier lcarlier at archlinux.org
Tue Apr 14 12:04:46 UTC 2015


    Date: Tuesday, April 14, 2015 @ 14:04:46
  Author: lcarlier
Revision: 236532

archrelease: copy trunk to extra-i686, extra-x86_64

Added:
  xf86-video-intel/repos/extra-i686/PKGBUILD
    (from rev 236531, xf86-video-intel/trunk/PKGBUILD)
  xf86-video-intel/repos/extra-i686/git-fixes.patch
    (from rev 236531, xf86-video-intel/trunk/git-fixes.patch)
  xf86-video-intel/repos/extra-i686/xf86-video-intel.install
    (from rev 236531, xf86-video-intel/trunk/xf86-video-intel.install)
  xf86-video-intel/repos/extra-x86_64/PKGBUILD
    (from rev 236531, xf86-video-intel/trunk/PKGBUILD)
  xf86-video-intel/repos/extra-x86_64/git-fixes.patch
    (from rev 236531, xf86-video-intel/trunk/git-fixes.patch)
  xf86-video-intel/repos/extra-x86_64/xf86-video-intel.install
    (from rev 236531, xf86-video-intel/trunk/xf86-video-intel.install)
Deleted:
  xf86-video-intel/repos/extra-i686/PKGBUILD
  xf86-video-intel/repos/extra-i686/git-fixes.patch
  xf86-video-intel/repos/extra-i686/xf86-video-intel.install
  xf86-video-intel/repos/extra-x86_64/PKGBUILD
  xf86-video-intel/repos/extra-x86_64/git-fixes.patch
  xf86-video-intel/repos/extra-x86_64/xf86-video-intel.install

---------------------------------------+
 /PKGBUILD                             |  110 ++++++++++
 /git-fixes.patch                      |  350 ++++++++++++++++++++++++++++++++
 /xf86-video-intel.install             |   40 +++
 extra-i686/PKGBUILD                   |   55 -----
 extra-i686/git-fixes.patch            |  128 -----------
 extra-i686/xf86-video-intel.install   |   20 -
 extra-x86_64/PKGBUILD                 |   55 -----
 extra-x86_64/git-fixes.patch          |  128 -----------
 extra-x86_64/xf86-video-intel.install |   20 -
 9 files changed, 500 insertions(+), 406 deletions(-)

Deleted: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD	2015-04-14 12:04:37 UTC (rev 236531)
+++ extra-i686/PKGBUILD	2015-04-14 12:04:46 UTC (rev 236532)
@@ -1,55 +0,0 @@
-# $Id$
-# Maintainer: AndyRTR <andyrtr at archlinux.org>
-# Maintainer: Jan de Groot <jgc at archlinux.org>
-
-pkgname=xf86-video-intel
-pkgver=2.99.917
-pkgrel=4
-arch=(i686 x86_64)
-url="http://xorg.freedesktop.org/"
-license=('custom')
-install=$pkgname.install
-pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
-depends=('mesa-dri' 'libxvmc' 'pixman' 'xcb-util>=0.3.9')
-makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=19' 'libx11' 'libxrender'
-             # additional deps for intel-virtual-output
-            'libxrandr' 'libxinerama' 'libxcursor' 'libxtst')
-optdepends=('libxrandr: for intel-virtual-output'
-            'libxinerama: for intel-virtual-output'
-            'libxcursor: for intel-virtual-output'
-            'libxtst: for intel-virtual-output')
-replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
-provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
-conflicts=('xorg-server<1.16' 'X-ABI-VIDEODRV_VERSION<19' 'X-ABI-VIDEODRV_VERSION>=20'
-           '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
-        git-fixes.patch)
-sha256sums=('00b781eea055582820a123c47b62411bdf6aabf4f03dc0568faec55faf9667c9'
-            '9216b69b7e01b6910b4758c4e346d84a43198ee516f6b239bf43c4e172a9c922')
-
-prepare() {
-  cd ${pkgname}-${pkgver}
-  # fix FS#43840, FS#43906
-  patch -Np1 -i ../git-fixes.patch
-}
-
-build() {
-  cd ${pkgname}-${pkgver}
-  ./configure --prefix=/usr --libexecdir=/usr/lib
-  make
-}
-
-check() {
-  cd $pkgname-$pkgver
-  make check
-}
-
-package() {
-  cd ${pkgname}-${pkgver}
-
-  make DESTDIR="${pkgdir}" install
-
-  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
-  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
-}

Copied: xf86-video-intel/repos/extra-i686/PKGBUILD (from rev 236531, xf86-video-intel/trunk/PKGBUILD)
===================================================================
--- extra-i686/PKGBUILD	                        (rev 0)
+++ extra-i686/PKGBUILD	2015-04-14 12:04:46 UTC (rev 236532)
@@ -0,0 +1,55 @@
+# $Id$
+# Maintainer: AndyRTR <andyrtr at archlinux.org>
+# Maintainer: Jan de Groot <jgc at archlinux.org>
+
+pkgname=xf86-video-intel
+pkgver=2.99.917
+pkgrel=5
+arch=(i686 x86_64)
+url="http://xorg.freedesktop.org/"
+license=('custom')
+install=$pkgname.install
+pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
+depends=('mesa-dri' 'libxvmc' 'pixman' 'xcb-util>=0.3.9')
+makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=19' 'libx11' 'libxrender'
+             # additional deps for intel-virtual-output
+            'libxrandr' 'libxinerama' 'libxcursor' 'libxtst')
+optdepends=('libxrandr: for intel-virtual-output'
+            'libxinerama: for intel-virtual-output'
+            'libxcursor: for intel-virtual-output'
+            'libxtst: for intel-virtual-output')
+replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
+provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
+conflicts=('xorg-server<1.16' 'X-ABI-VIDEODRV_VERSION<19' 'X-ABI-VIDEODRV_VERSION>=20'
+           '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
+        git-fixes.patch)
+sha256sums=('00b781eea055582820a123c47b62411bdf6aabf4f03dc0568faec55faf9667c9'
+            '3b38b844fbc8088401ebbbafbbf1399d87f077caa5020cbd822487b7d26514e0')
+
+prepare() {
+  cd ${pkgname}-${pkgver}
+  # fix FS#43840, FS#43906
+  patch -Np1 -i ../git-fixes.patch
+}
+
+build() {
+  cd ${pkgname}-${pkgver}
+  ./configure --prefix=/usr --libexecdir=/usr/lib
+  make
+}
+
+check() {
+  cd $pkgname-$pkgver
+  make check
+}
+
+package() {
+  cd ${pkgname}-${pkgver}
+
+  make DESTDIR="${pkgdir}" install
+
+  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
+  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
+}

Deleted: extra-i686/git-fixes.patch
===================================================================
--- extra-i686/git-fixes.patch	2015-04-14 12:04:37 UTC (rev 236531)
+++ extra-i686/git-fixes.patch	2015-04-14 12:04:46 UTC (rev 236532)
@@ -1,128 +0,0 @@
-From 127aae5a72a69df325fed0b63d345e81583d5ca1 Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris at chris-wilson.co.uk>
-Date: Mon, 16 Feb 2015 21:37:35 +0000
-Subject: tools/intel-virtual-output: Check for DRI3 more carefully
-
-Using xcb, we cannot simply call xcb_dri3_query_version() without it
-terminating the connection if DRI3 is not enabled on the target display.
-Oops.
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89172
-Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
-
-diff --git a/tools/virtual.c b/tools/virtual.c
-index 8e2b4a2..3bcd057 100644
---- a/tools/virtual.c
-+++ b/tools/virtual.c
-@@ -218,6 +218,13 @@ static inline XRRScreenResources *_XRRGetScreenResourcesCurrent(Display *dpy, Wi
- static int _x_error_occurred;
- 
- static int
-+_io_error_handler(Display *display)
-+{
-+	fprintf(stderr, "XIO error on display %s\n", DisplayString(display));
-+	abort();
-+}
-+
-+static int
- _check_error_handler(Display     *display,
- 		     XErrorEvent *event)
- {
-@@ -320,6 +327,7 @@ can_use_shm(Display *dpy,
- #include <X11/Xlib-xcb.h>
- #include <X11/xshmfence.h>
- #include <xcb/xcb.h>
-+#include <xcb/xcbext.h>
- #include <xcb/dri3.h>
- #include <xcb/sync.h>
- static Pixmap dri3_create_pixmap(Display *dpy,
-@@ -357,6 +365,7 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
- {
- 	xcb_connection_t *c = XGetXCBConnection(dpy);
- 	xcb_dri3_query_version_reply_t *reply;
-+	xcb_generic_error_t *error;
- 
- 	*major = *minor = -1;
- 
-@@ -364,7 +373,8 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
- 					     xcb_dri3_query_version(c,
- 								    XCB_DRI3_MAJOR_VERSION,
- 								    XCB_DRI3_MINOR_VERSION),
--					     NULL);
-+					     &error);
-+	free(error);
- 	if (reply == NULL)
- 		return -1;
- 
-@@ -377,8 +387,14 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
- 
- static int dri3_exists(Display *dpy)
- {
-+	xcb_extension_t dri3 = { "DRI3", 0 };
-+	const xcb_query_extension_reply_t *ext;
- 	int major, minor;
- 
-+	ext = xcb_get_extension_data(XGetXCBConnection(dpy), &dri3);
-+	if (ext == NULL || !ext->present)
-+		return 0;
-+
- 	if (dri3_query_version(dpy, &major, &minor) < 0)
- 		return 0;
- 
-@@ -3228,6 +3244,7 @@ int main(int argc, char **argv)
- 		return -ret;
- 
- 	XSetErrorHandler(_check_error_handler);
-+	XSetIOErrorHandler(_io_error_handler);
- 
- 	ret = add_fd(&ctx, display_open(&ctx, src_name));
- 	if (ret) {
--- 
-cgit v0.10.2
-From db82617464e55432522e6199a88408ff0187f6ff Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris at chris-wilson.co.uk>
-Date: Wed, 4 Mar 2015 17:12:30 +0000
-Subject: sna: Decouple RandR pointers early in CloseScreen
-
-RR resources are freed before CloseScreen (as they are a ServerClient
-resource), but on entering our CloseScreen callbacks we are left with a
-set of stale pointers. Decouple those before proceeding so that we are
-not tempted to dereference them.
-
-Bugzilla: https://bugs.archlinux.org/task/43906
-Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
-
-diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
-index 88db508..fd6c46c 100644
---- a/src/sna/sna_display.c
-+++ b/src/sna/sna_display.c
-@@ -6292,9 +6292,26 @@ sna_mode_enable(struct sna *sna)
- 	sna->mode.dirty = false;
- }
- 
-+static void sna_randr_close(struct sna *sna)
-+{
-+	xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(sna->scrn);
-+	int n;
-+
-+	/* The RR structs are freed early during CloseScreen as they
-+	 * are tracked as Resources. However, we may be tempted to
-+	 * access them during shutdown so decouple them now.
-+	 */
-+	  for (n = 0; n < config->num_output; n++)
-+		  config->output[n]->randr_output = NULL;
-+
-+	  for (n = 0; n < config->num_crtc; n++)
-+		  config->crtc[n]->randr_crtc = NULL;
-+}
-+
- void
- sna_mode_close(struct sna *sna)
- {
-+	sna_randr_close(sna);
- 	sna_mode_wakeup(sna);
- 
- 	if (sna->flags & SNA_IS_HOSTED)
--- 
-cgit v0.10.2
-

Copied: xf86-video-intel/repos/extra-i686/git-fixes.patch (from rev 236531, xf86-video-intel/trunk/git-fixes.patch)
===================================================================
--- extra-i686/git-fixes.patch	                        (rev 0)
+++ extra-i686/git-fixes.patch	2015-04-14 12:04:46 UTC (rev 236532)
@@ -0,0 +1,175 @@
+From 127aae5a72a69df325fed0b63d345e81583d5ca1 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Mon, 16 Feb 2015 21:37:35 +0000
+Subject: tools/intel-virtual-output: Check for DRI3 more carefully
+
+Using xcb, we cannot simply call xcb_dri3_query_version() without it
+terminating the connection if DRI3 is not enabled on the target display.
+Oops.
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89172
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+
+diff --git a/tools/virtual.c b/tools/virtual.c
+index 8e2b4a2..3bcd057 100644
+--- a/tools/virtual.c
++++ b/tools/virtual.c
+@@ -218,6 +218,13 @@ static inline XRRScreenResources *_XRRGetScreenResourcesCurrent(Display *dpy, Wi
+ static int _x_error_occurred;
+ 
+ static int
++_io_error_handler(Display *display)
++{
++	fprintf(stderr, "XIO error on display %s\n", DisplayString(display));
++	abort();
++}
++
++static int
+ _check_error_handler(Display     *display,
+ 		     XErrorEvent *event)
+ {
+@@ -320,6 +327,7 @@ can_use_shm(Display *dpy,
+ #include <X11/Xlib-xcb.h>
+ #include <X11/xshmfence.h>
+ #include <xcb/xcb.h>
++#include <xcb/xcbext.h>
+ #include <xcb/dri3.h>
+ #include <xcb/sync.h>
+ static Pixmap dri3_create_pixmap(Display *dpy,
+@@ -357,6 +365,7 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
+ {
+ 	xcb_connection_t *c = XGetXCBConnection(dpy);
+ 	xcb_dri3_query_version_reply_t *reply;
++	xcb_generic_error_t *error;
+ 
+ 	*major = *minor = -1;
+ 
+@@ -364,7 +373,8 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
+ 					     xcb_dri3_query_version(c,
+ 								    XCB_DRI3_MAJOR_VERSION,
+ 								    XCB_DRI3_MINOR_VERSION),
+-					     NULL);
++					     &error);
++	free(error);
+ 	if (reply == NULL)
+ 		return -1;
+ 
+@@ -377,8 +387,14 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
+ 
+ static int dri3_exists(Display *dpy)
+ {
++	xcb_extension_t dri3 = { "DRI3", 0 };
++	const xcb_query_extension_reply_t *ext;
+ 	int major, minor;
+ 
++	ext = xcb_get_extension_data(XGetXCBConnection(dpy), &dri3);
++	if (ext == NULL || !ext->present)
++		return 0;
++
+ 	if (dri3_query_version(dpy, &major, &minor) < 0)
+ 		return 0;
+ 
+@@ -3228,6 +3244,7 @@ int main(int argc, char **argv)
+ 		return -ret;
+ 
+ 	XSetErrorHandler(_check_error_handler);
++	XSetIOErrorHandler(_io_error_handler);
+ 
+ 	ret = add_fd(&ctx, display_open(&ctx, src_name));
+ 	if (ret) {
+-- 
+cgit v0.10.2
+From db82617464e55432522e6199a88408ff0187f6ff Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Wed, 4 Mar 2015 17:12:30 +0000
+Subject: sna: Decouple RandR pointers early in CloseScreen
+
+RR resources are freed before CloseScreen (as they are a ServerClient
+resource), but on entering our CloseScreen callbacks we are left with a
+set of stale pointers. Decouple those before proceeding so that we are
+not tempted to dereference them.
+
+Bugzilla: https://bugs.archlinux.org/task/43906
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+
+diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
+index 88db508..fd6c46c 100644
+--- a/src/sna/sna_display.c
++++ b/src/sna/sna_display.c
+@@ -6292,9 +6292,26 @@ sna_mode_enable(struct sna *sna)
+ 	sna->mode.dirty = false;
+ }
+ 
++static void sna_randr_close(struct sna *sna)
++{
++	xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(sna->scrn);
++	int n;
++
++	/* The RR structs are freed early during CloseScreen as they
++	 * are tracked as Resources. However, we may be tempted to
++	 * access them during shutdown so decouple them now.
++	 */
++	  for (n = 0; n < config->num_output; n++)
++		  config->output[n]->randr_output = NULL;
++
++	  for (n = 0; n < config->num_crtc; n++)
++		  config->crtc[n]->randr_crtc = NULL;
++}
++
+ void
+ sna_mode_close(struct sna *sna)
+ {
++	sna_randr_close(sna);
+ 	sna_mode_wakeup(sna);
+ 
+ 	if (sna->flags & SNA_IS_HOSTED)
+-- 
+cgit v0.10.2
+From 9c109f3dc56621215e580e74a6161f00035bdac3 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Sun, 12 Apr 2015 21:15:54 +0100
+Subject: [PATCH] sna: Mark the GPU as available before doing the mode restore
+ on VT enter
+
+Sometimes we want to render with the GPU when doing a mode switch, e.g.
+if we need to initialise an output surface. To do so, we need to prepare
+the acceleration layer first.
+
+Lots of thanks to Vasily for tracking this one down.
+
+Reported-by: Vasily Khoruzhick <anarsoul at gmail.com>
+Bugzilla: https://bugs.archlinux.org/task/43534
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+---
+ src/sna/sna_driver.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
+index 31500e7..488ca9b 100644
+--- a/src/sna/sna_driver.c
++++ b/src/sna/sna_driver.c
+@@ -1213,6 +1213,8 @@ static Bool sna_enter_vt(VT_FUNC_ARGS_DECL)
+ 	if (intel_get_master(sna->dev))
+ 		return FALSE;
+ 
++	sna_accel_enter(sna);
++
+ 	if (sna->flags & SNA_REPROBE) {
+ 		DBG(("%s: reporting deferred hotplug event\n", __FUNCTION__));
+ 		sna_mode_discover(sna);
+@@ -1221,11 +1223,11 @@ static Bool sna_enter_vt(VT_FUNC_ARGS_DECL)
+ 	sna_mode_check(sna);
+ 
+ 	if (!sna_set_desired_mode(sna)) {
++		sna_accel_leave(sna);
+ 		intel_put_master(sna->dev);
+ 		return FALSE;
+ 	}
+ 
+-	sna_accel_enter(sna);
+ 	return TRUE;
+ }
+ 
+-- 
+2.3.5
+

Deleted: extra-i686/xf86-video-intel.install
===================================================================
--- extra-i686/xf86-video-intel.install	2015-04-14 12:04:37 UTC (rev 236531)
+++ extra-i686/xf86-video-intel.install	2015-04-14 12:04:46 UTC (rev 236532)
@@ -1,20 +0,0 @@
-post_upgrade() {
-  if (( $(vercmp $2 2.21.15) < 0 )); then
-    post_install
-  fi
-}
-
-post_install() {
-  cat <<MSG
->>> This driver uses SNA as the default acceleration method. You can try
-    falling back to UXA if you run into trouble. To do so, save a file with
-    the following content as /etc/X11/xorg.conf.d/20-intel.conf :
-      Section "Device"
-        Identifier  "Intel Graphics"
-        Driver      "intel"
-        Option      "AccelMethod"  "uxa"
-        #Option      "AccelMethod"  "sna"
-      EndSection
-MSG
-}
-

Copied: xf86-video-intel/repos/extra-i686/xf86-video-intel.install (from rev 236531, xf86-video-intel/trunk/xf86-video-intel.install)
===================================================================
--- extra-i686/xf86-video-intel.install	                        (rev 0)
+++ extra-i686/xf86-video-intel.install	2015-04-14 12:04:46 UTC (rev 236532)
@@ -0,0 +1,20 @@
+post_upgrade() {
+  if (( $(vercmp $2 2.21.15) < 0 )); then
+    post_install
+  fi
+}
+
+post_install() {
+  cat <<MSG
+>>> This driver uses SNA as the default acceleration method. You can try
+    falling back to UXA if you run into trouble. To do so, save a file with
+    the following content as /etc/X11/xorg.conf.d/20-intel.conf :
+      Section "Device"
+        Identifier  "Intel Graphics"
+        Driver      "intel"
+        Option      "AccelMethod"  "uxa"
+        #Option      "AccelMethod"  "sna"
+      EndSection
+MSG
+}
+

Deleted: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD	2015-04-14 12:04:37 UTC (rev 236531)
+++ extra-x86_64/PKGBUILD	2015-04-14 12:04:46 UTC (rev 236532)
@@ -1,55 +0,0 @@
-# $Id$
-# Maintainer: AndyRTR <andyrtr at archlinux.org>
-# Maintainer: Jan de Groot <jgc at archlinux.org>
-
-pkgname=xf86-video-intel
-pkgver=2.99.917
-pkgrel=4
-arch=(i686 x86_64)
-url="http://xorg.freedesktop.org/"
-license=('custom')
-install=$pkgname.install
-pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
-depends=('mesa-dri' 'libxvmc' 'pixman' 'xcb-util>=0.3.9')
-makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=19' 'libx11' 'libxrender'
-             # additional deps for intel-virtual-output
-            'libxrandr' 'libxinerama' 'libxcursor' 'libxtst')
-optdepends=('libxrandr: for intel-virtual-output'
-            'libxinerama: for intel-virtual-output'
-            'libxcursor: for intel-virtual-output'
-            'libxtst: for intel-virtual-output')
-replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
-provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
-conflicts=('xorg-server<1.16' 'X-ABI-VIDEODRV_VERSION<19' 'X-ABI-VIDEODRV_VERSION>=20'
-           '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
-        git-fixes.patch)
-sha256sums=('00b781eea055582820a123c47b62411bdf6aabf4f03dc0568faec55faf9667c9'
-            '9216b69b7e01b6910b4758c4e346d84a43198ee516f6b239bf43c4e172a9c922')
-
-prepare() {
-  cd ${pkgname}-${pkgver}
-  # fix FS#43840, FS#43906
-  patch -Np1 -i ../git-fixes.patch
-}
-
-build() {
-  cd ${pkgname}-${pkgver}
-  ./configure --prefix=/usr --libexecdir=/usr/lib
-  make
-}
-
-check() {
-  cd $pkgname-$pkgver
-  make check
-}
-
-package() {
-  cd ${pkgname}-${pkgver}
-
-  make DESTDIR="${pkgdir}" install
-
-  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
-  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
-}

Copied: xf86-video-intel/repos/extra-x86_64/PKGBUILD (from rev 236531, xf86-video-intel/trunk/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD	                        (rev 0)
+++ extra-x86_64/PKGBUILD	2015-04-14 12:04:46 UTC (rev 236532)
@@ -0,0 +1,55 @@
+# $Id$
+# Maintainer: AndyRTR <andyrtr at archlinux.org>
+# Maintainer: Jan de Groot <jgc at archlinux.org>
+
+pkgname=xf86-video-intel
+pkgver=2.99.917
+pkgrel=5
+arch=(i686 x86_64)
+url="http://xorg.freedesktop.org/"
+license=('custom')
+install=$pkgname.install
+pkgdesc="X.org Intel i810/i830/i915/945G/G965+ video drivers"
+depends=('mesa-dri' 'libxvmc' 'pixman' 'xcb-util>=0.3.9')
+makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=19' 'libx11' 'libxrender'
+             # additional deps for intel-virtual-output
+            'libxrandr' 'libxinerama' 'libxcursor' 'libxtst')
+optdepends=('libxrandr: for intel-virtual-output'
+            'libxinerama: for intel-virtual-output'
+            'libxcursor: for intel-virtual-output'
+            'libxtst: for intel-virtual-output')
+replaces=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
+provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna')
+conflicts=('xorg-server<1.16' 'X-ABI-VIDEODRV_VERSION<19' 'X-ABI-VIDEODRV_VERSION>=20'
+           '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
+        git-fixes.patch)
+sha256sums=('00b781eea055582820a123c47b62411bdf6aabf4f03dc0568faec55faf9667c9'
+            '3b38b844fbc8088401ebbbafbbf1399d87f077caa5020cbd822487b7d26514e0')
+
+prepare() {
+  cd ${pkgname}-${pkgver}
+  # fix FS#43840, FS#43906
+  patch -Np1 -i ../git-fixes.patch
+}
+
+build() {
+  cd ${pkgname}-${pkgver}
+  ./configure --prefix=/usr --libexecdir=/usr/lib
+  make
+}
+
+check() {
+  cd $pkgname-$pkgver
+  make check
+}
+
+package() {
+  cd ${pkgname}-${pkgver}
+
+  make DESTDIR="${pkgdir}" install
+
+  install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
+  install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
+}

Deleted: extra-x86_64/git-fixes.patch
===================================================================
--- extra-x86_64/git-fixes.patch	2015-04-14 12:04:37 UTC (rev 236531)
+++ extra-x86_64/git-fixes.patch	2015-04-14 12:04:46 UTC (rev 236532)
@@ -1,128 +0,0 @@
-From 127aae5a72a69df325fed0b63d345e81583d5ca1 Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris at chris-wilson.co.uk>
-Date: Mon, 16 Feb 2015 21:37:35 +0000
-Subject: tools/intel-virtual-output: Check for DRI3 more carefully
-
-Using xcb, we cannot simply call xcb_dri3_query_version() without it
-terminating the connection if DRI3 is not enabled on the target display.
-Oops.
-
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89172
-Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
-
-diff --git a/tools/virtual.c b/tools/virtual.c
-index 8e2b4a2..3bcd057 100644
---- a/tools/virtual.c
-+++ b/tools/virtual.c
-@@ -218,6 +218,13 @@ static inline XRRScreenResources *_XRRGetScreenResourcesCurrent(Display *dpy, Wi
- static int _x_error_occurred;
- 
- static int
-+_io_error_handler(Display *display)
-+{
-+	fprintf(stderr, "XIO error on display %s\n", DisplayString(display));
-+	abort();
-+}
-+
-+static int
- _check_error_handler(Display     *display,
- 		     XErrorEvent *event)
- {
-@@ -320,6 +327,7 @@ can_use_shm(Display *dpy,
- #include <X11/Xlib-xcb.h>
- #include <X11/xshmfence.h>
- #include <xcb/xcb.h>
-+#include <xcb/xcbext.h>
- #include <xcb/dri3.h>
- #include <xcb/sync.h>
- static Pixmap dri3_create_pixmap(Display *dpy,
-@@ -357,6 +365,7 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
- {
- 	xcb_connection_t *c = XGetXCBConnection(dpy);
- 	xcb_dri3_query_version_reply_t *reply;
-+	xcb_generic_error_t *error;
- 
- 	*major = *minor = -1;
- 
-@@ -364,7 +373,8 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
- 					     xcb_dri3_query_version(c,
- 								    XCB_DRI3_MAJOR_VERSION,
- 								    XCB_DRI3_MINOR_VERSION),
--					     NULL);
-+					     &error);
-+	free(error);
- 	if (reply == NULL)
- 		return -1;
- 
-@@ -377,8 +387,14 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
- 
- static int dri3_exists(Display *dpy)
- {
-+	xcb_extension_t dri3 = { "DRI3", 0 };
-+	const xcb_query_extension_reply_t *ext;
- 	int major, minor;
- 
-+	ext = xcb_get_extension_data(XGetXCBConnection(dpy), &dri3);
-+	if (ext == NULL || !ext->present)
-+		return 0;
-+
- 	if (dri3_query_version(dpy, &major, &minor) < 0)
- 		return 0;
- 
-@@ -3228,6 +3244,7 @@ int main(int argc, char **argv)
- 		return -ret;
- 
- 	XSetErrorHandler(_check_error_handler);
-+	XSetIOErrorHandler(_io_error_handler);
- 
- 	ret = add_fd(&ctx, display_open(&ctx, src_name));
- 	if (ret) {
--- 
-cgit v0.10.2
-From db82617464e55432522e6199a88408ff0187f6ff Mon Sep 17 00:00:00 2001
-From: Chris Wilson <chris at chris-wilson.co.uk>
-Date: Wed, 4 Mar 2015 17:12:30 +0000
-Subject: sna: Decouple RandR pointers early in CloseScreen
-
-RR resources are freed before CloseScreen (as they are a ServerClient
-resource), but on entering our CloseScreen callbacks we are left with a
-set of stale pointers. Decouple those before proceeding so that we are
-not tempted to dereference them.
-
-Bugzilla: https://bugs.archlinux.org/task/43906
-Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
-
-diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
-index 88db508..fd6c46c 100644
---- a/src/sna/sna_display.c
-+++ b/src/sna/sna_display.c
-@@ -6292,9 +6292,26 @@ sna_mode_enable(struct sna *sna)
- 	sna->mode.dirty = false;
- }
- 
-+static void sna_randr_close(struct sna *sna)
-+{
-+	xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(sna->scrn);
-+	int n;
-+
-+	/* The RR structs are freed early during CloseScreen as they
-+	 * are tracked as Resources. However, we may be tempted to
-+	 * access them during shutdown so decouple them now.
-+	 */
-+	  for (n = 0; n < config->num_output; n++)
-+		  config->output[n]->randr_output = NULL;
-+
-+	  for (n = 0; n < config->num_crtc; n++)
-+		  config->crtc[n]->randr_crtc = NULL;
-+}
-+
- void
- sna_mode_close(struct sna *sna)
- {
-+	sna_randr_close(sna);
- 	sna_mode_wakeup(sna);
- 
- 	if (sna->flags & SNA_IS_HOSTED)
--- 
-cgit v0.10.2
-

Copied: xf86-video-intel/repos/extra-x86_64/git-fixes.patch (from rev 236531, xf86-video-intel/trunk/git-fixes.patch)
===================================================================
--- extra-x86_64/git-fixes.patch	                        (rev 0)
+++ extra-x86_64/git-fixes.patch	2015-04-14 12:04:46 UTC (rev 236532)
@@ -0,0 +1,175 @@
+From 127aae5a72a69df325fed0b63d345e81583d5ca1 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Mon, 16 Feb 2015 21:37:35 +0000
+Subject: tools/intel-virtual-output: Check for DRI3 more carefully
+
+Using xcb, we cannot simply call xcb_dri3_query_version() without it
+terminating the connection if DRI3 is not enabled on the target display.
+Oops.
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89172
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+
+diff --git a/tools/virtual.c b/tools/virtual.c
+index 8e2b4a2..3bcd057 100644
+--- a/tools/virtual.c
++++ b/tools/virtual.c
+@@ -218,6 +218,13 @@ static inline XRRScreenResources *_XRRGetScreenResourcesCurrent(Display *dpy, Wi
+ static int _x_error_occurred;
+ 
+ static int
++_io_error_handler(Display *display)
++{
++	fprintf(stderr, "XIO error on display %s\n", DisplayString(display));
++	abort();
++}
++
++static int
+ _check_error_handler(Display     *display,
+ 		     XErrorEvent *event)
+ {
+@@ -320,6 +327,7 @@ can_use_shm(Display *dpy,
+ #include <X11/Xlib-xcb.h>
+ #include <X11/xshmfence.h>
+ #include <xcb/xcb.h>
++#include <xcb/xcbext.h>
+ #include <xcb/dri3.h>
+ #include <xcb/sync.h>
+ static Pixmap dri3_create_pixmap(Display *dpy,
+@@ -357,6 +365,7 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
+ {
+ 	xcb_connection_t *c = XGetXCBConnection(dpy);
+ 	xcb_dri3_query_version_reply_t *reply;
++	xcb_generic_error_t *error;
+ 
+ 	*major = *minor = -1;
+ 
+@@ -364,7 +373,8 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
+ 					     xcb_dri3_query_version(c,
+ 								    XCB_DRI3_MAJOR_VERSION,
+ 								    XCB_DRI3_MINOR_VERSION),
+-					     NULL);
++					     &error);
++	free(error);
+ 	if (reply == NULL)
+ 		return -1;
+ 
+@@ -377,8 +387,14 @@ static int dri3_query_version(Display *dpy, int *major, int *minor)
+ 
+ static int dri3_exists(Display *dpy)
+ {
++	xcb_extension_t dri3 = { "DRI3", 0 };
++	const xcb_query_extension_reply_t *ext;
+ 	int major, minor;
+ 
++	ext = xcb_get_extension_data(XGetXCBConnection(dpy), &dri3);
++	if (ext == NULL || !ext->present)
++		return 0;
++
+ 	if (dri3_query_version(dpy, &major, &minor) < 0)
+ 		return 0;
+ 
+@@ -3228,6 +3244,7 @@ int main(int argc, char **argv)
+ 		return -ret;
+ 
+ 	XSetErrorHandler(_check_error_handler);
++	XSetIOErrorHandler(_io_error_handler);
+ 
+ 	ret = add_fd(&ctx, display_open(&ctx, src_name));
+ 	if (ret) {
+-- 
+cgit v0.10.2
+From db82617464e55432522e6199a88408ff0187f6ff Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Wed, 4 Mar 2015 17:12:30 +0000
+Subject: sna: Decouple RandR pointers early in CloseScreen
+
+RR resources are freed before CloseScreen (as they are a ServerClient
+resource), but on entering our CloseScreen callbacks we are left with a
+set of stale pointers. Decouple those before proceeding so that we are
+not tempted to dereference them.
+
+Bugzilla: https://bugs.archlinux.org/task/43906
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+
+diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
+index 88db508..fd6c46c 100644
+--- a/src/sna/sna_display.c
++++ b/src/sna/sna_display.c
+@@ -6292,9 +6292,26 @@ sna_mode_enable(struct sna *sna)
+ 	sna->mode.dirty = false;
+ }
+ 
++static void sna_randr_close(struct sna *sna)
++{
++	xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(sna->scrn);
++	int n;
++
++	/* The RR structs are freed early during CloseScreen as they
++	 * are tracked as Resources. However, we may be tempted to
++	 * access them during shutdown so decouple them now.
++	 */
++	  for (n = 0; n < config->num_output; n++)
++		  config->output[n]->randr_output = NULL;
++
++	  for (n = 0; n < config->num_crtc; n++)
++		  config->crtc[n]->randr_crtc = NULL;
++}
++
+ void
+ sna_mode_close(struct sna *sna)
+ {
++	sna_randr_close(sna);
+ 	sna_mode_wakeup(sna);
+ 
+ 	if (sna->flags & SNA_IS_HOSTED)
+-- 
+cgit v0.10.2
+From 9c109f3dc56621215e580e74a6161f00035bdac3 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris at chris-wilson.co.uk>
+Date: Sun, 12 Apr 2015 21:15:54 +0100
+Subject: [PATCH] sna: Mark the GPU as available before doing the mode restore
+ on VT enter
+
+Sometimes we want to render with the GPU when doing a mode switch, e.g.
+if we need to initialise an output surface. To do so, we need to prepare
+the acceleration layer first.
+
+Lots of thanks to Vasily for tracking this one down.
+
+Reported-by: Vasily Khoruzhick <anarsoul at gmail.com>
+Bugzilla: https://bugs.archlinux.org/task/43534
+Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
+---
+ src/sna/sna_driver.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
+index 31500e7..488ca9b 100644
+--- a/src/sna/sna_driver.c
++++ b/src/sna/sna_driver.c
+@@ -1213,6 +1213,8 @@ static Bool sna_enter_vt(VT_FUNC_ARGS_DECL)
+ 	if (intel_get_master(sna->dev))
+ 		return FALSE;
+ 
++	sna_accel_enter(sna);
++
+ 	if (sna->flags & SNA_REPROBE) {
+ 		DBG(("%s: reporting deferred hotplug event\n", __FUNCTION__));
+ 		sna_mode_discover(sna);
+@@ -1221,11 +1223,11 @@ static Bool sna_enter_vt(VT_FUNC_ARGS_DECL)
+ 	sna_mode_check(sna);
+ 
+ 	if (!sna_set_desired_mode(sna)) {
++		sna_accel_leave(sna);
+ 		intel_put_master(sna->dev);
+ 		return FALSE;
+ 	}
+ 
+-	sna_accel_enter(sna);
+ 	return TRUE;
+ }
+ 
+-- 
+2.3.5
+

Deleted: extra-x86_64/xf86-video-intel.install
===================================================================
--- extra-x86_64/xf86-video-intel.install	2015-04-14 12:04:37 UTC (rev 236531)
+++ extra-x86_64/xf86-video-intel.install	2015-04-14 12:04:46 UTC (rev 236532)
@@ -1,20 +0,0 @@
-post_upgrade() {
-  if (( $(vercmp $2 2.21.15) < 0 )); then
-    post_install
-  fi
-}
-
-post_install() {
-  cat <<MSG
->>> This driver uses SNA as the default acceleration method. You can try
-    falling back to UXA if you run into trouble. To do so, save a file with
-    the following content as /etc/X11/xorg.conf.d/20-intel.conf :
-      Section "Device"
-        Identifier  "Intel Graphics"
-        Driver      "intel"
-        Option      "AccelMethod"  "uxa"
-        #Option      "AccelMethod"  "sna"
-      EndSection
-MSG
-}
-

Copied: xf86-video-intel/repos/extra-x86_64/xf86-video-intel.install (from rev 236531, xf86-video-intel/trunk/xf86-video-intel.install)
===================================================================
--- extra-x86_64/xf86-video-intel.install	                        (rev 0)
+++ extra-x86_64/xf86-video-intel.install	2015-04-14 12:04:46 UTC (rev 236532)
@@ -0,0 +1,20 @@
+post_upgrade() {
+  if (( $(vercmp $2 2.21.15) < 0 )); then
+    post_install
+  fi
+}
+
+post_install() {
+  cat <<MSG
+>>> This driver uses SNA as the default acceleration method. You can try
+    falling back to UXA if you run into trouble. To do so, save a file with
+    the following content as /etc/X11/xorg.conf.d/20-intel.conf :
+      Section "Device"
+        Identifier  "Intel Graphics"
+        Driver      "intel"
+        Option      "AccelMethod"  "uxa"
+        #Option      "AccelMethod"  "sna"
+      EndSection
+MSG
+}
+



More information about the arch-commits mailing list