summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2013-11-27 12:01:19 +0000
committerChí-Thanh Christopher Nguyễn <chithanh@gentoo.org>2013-11-27 12:01:19 +0000
commit1cc44bfa52d9c3bef9a0345106db2776c41a0120 (patch)
treed4d4cb1404140cb1291d215b1d4c207d23a2db60 /x11-libs/libdrm
parentVersion bump, drop old (diff)
downloadgentoo-2-1cc44bfa52d9c3bef9a0345106db2776c41a0120.tar.gz
gentoo-2-1cc44bfa52d9c3bef9a0345106db2776c41a0120.tar.bz2
gentoo-2-1cc44bfa52d9c3bef9a0345106db2776c41a0120.zip
Add patch to fix crash on radeonsi cards, upstream #71983.
(Portage version: 2.2.7/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'x11-libs/libdrm')
-rw-r--r--x11-libs/libdrm/ChangeLog8
-rw-r--r--x11-libs/libdrm/files/libdrm-2.4.49-radeonsi-crash.patch24
-rw-r--r--x11-libs/libdrm/libdrm-2.4.49-r1.ebuild61
3 files changed, 92 insertions, 1 deletions
diff --git a/x11-libs/libdrm/ChangeLog b/x11-libs/libdrm/ChangeLog
index 1081c1e14dad..fb6a05451764 100644
--- a/x11-libs/libdrm/ChangeLog
+++ b/x11-libs/libdrm/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for x11-libs/libdrm
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-libs/libdrm/ChangeLog,v 1.247 2013/11/26 21:56:53 mattst88 Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/libdrm/ChangeLog,v 1.248 2013/11/27 12:01:19 chithanh Exp $
+
+*libdrm-2.4.49-r1 (27 Nov 2013)
+
+ 27 Nov 2013; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
+ +files/libdrm-2.4.49-radeonsi-crash.patch, +libdrm-2.4.49-r1.ebuild:
+ Add patch to fix crash on radeonsi cards, upstream #71983.
*libdrm-2.4.49 (26 Nov 2013)
diff --git a/x11-libs/libdrm/files/libdrm-2.4.49-radeonsi-crash.patch b/x11-libs/libdrm/files/libdrm-2.4.49-radeonsi-crash.patch
new file mode 100644
index 000000000000..58af456c153f
--- /dev/null
+++ b/x11-libs/libdrm/files/libdrm-2.4.49-radeonsi-crash.patch
@@ -0,0 +1,24 @@
+From c8a437f4c76527b3c8385699ccee07f35fe3f166 Mon Sep 17 00:00:00 2001
+From: Michel Dänzer <michel.daenzer@amd.com>
+Date: Tue, 26 Nov 2013 09:16:03 +0000
+Subject: radeon: Update unaligned offset for 2D->1D tiling transition on SI
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71983
+
+Tested-by: Arek Ruśniak <arek.rusi@gmail.com>
+---
+diff --git a/radeon/radeon_surface.c b/radeon/radeon_surface.c
+index b528a48..dcbbfdc 100644
+--- a/radeon/radeon_surface.c
++++ b/radeon/radeon_surface.c
+@@ -1667,7 +1667,7 @@ static int si_surface_init_2d(struct radeon_surface_manager *surf_man,
+ return si_surface_init_1d(surf_man, surf, level, bpe, tile_mode, offset, i);
+ }
+ /* level0 and first mipmap need to have alignment */
+- aligned_offset = surf->bo_size;
++ aligned_offset = offset = surf->bo_size;
+ if ((i == 0)) {
+ aligned_offset = ALIGN(aligned_offset, surf->bo_alignment);
+ }
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/x11-libs/libdrm/libdrm-2.4.49-r1.ebuild b/x11-libs/libdrm/libdrm-2.4.49-r1.ebuild
new file mode 100644
index 000000000000..4a2c5de8c814
--- /dev/null
+++ b/x11-libs/libdrm/libdrm-2.4.49-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-libs/libdrm/libdrm-2.4.49-r1.ebuild,v 1.1 2013/11/27 12:01:19 chithanh Exp $
+
+EAPI=5
+
+XORG_MULTILIB=yes
+inherit xorg-2
+
+EGIT_REPO_URI="git://anongit.freedesktop.org/git/mesa/drm"
+
+DESCRIPTION="X.Org libdrm library"
+HOMEPAGE="http://dri.freedesktop.org/"
+if [[ ${PV} = 9999* ]]; then
+ SRC_URI=""
+else
+ SRC_URI="http://dri.freedesktop.org/${PN}/${P}.tar.bz2"
+fi
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~arm-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris"
+VIDEO_CARDS="exynos freedreno intel nouveau omap radeon vmware"
+for card in ${VIDEO_CARDS}; do
+ IUSE_VIDEO_CARDS+=" video_cards_${card}"
+done
+
+IUSE="${IUSE_VIDEO_CARDS} libkms"
+REQUIRED_USE="video_cards_exynos? ( libkms )"
+RESTRICT="test" # see bug #236845
+
+RDEPEND="dev-libs/libpthread-stubs[${MULTILIB_USEDEP}]
+ video_cards_intel? ( >=x11-libs/libpciaccess-0.10[${MULTILIB_USEDEP}] )
+ abi_x86_32? ( !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)] )"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.4.28-solaris.patch
+ "${FILESDIR}"/${P}-radeonsi-crash.patch
+)
+
+src_prepare() {
+ if [[ ${PV} = 9999* ]]; then
+ # tests are restricted, no point in building them
+ sed -ie 's/tests //' "${S}"/Makefile.am
+ fi
+ xorg-2_src_prepare
+}
+
+src_configure() {
+ XORG_CONFIGURE_OPTIONS=(
+ --enable-udev
+ $(use_enable video_cards_exynos exynos-experimental-api)
+ $(use_enable video_cards_freedreno freedreno-experimental-api)
+ $(use_enable video_cards_intel intel)
+ $(use_enable video_cards_nouveau nouveau)
+ $(use_enable video_cards_omap omap-experimental-api)
+ $(use_enable video_cards_radeon radeon)
+ $(use_enable video_cards_vmware vmwgfx)
+ $(use_enable libkms)
+ )
+ xorg-2_src_configure
+}