New patch for nvidia-drivers to make SLUB allocator work, upstream sync
This commit is contained in:
parent
a16adbb8d4
commit
2842ca7aeb
@ -1,9 +1,9 @@
|
|||||||
AUX 256.35-unified-arch.patch 1380 RMD160 2612cad105f442d4232b99e3054124e8037860bb SHA1 d82433c0b3520c87e05f1013a59b243ec65ebe97 SHA256 5e84bb51e0f9b3ceba270d53ad2a739dc534861df9acd6ab6852670f5a1357d7
|
AUX 256.35-unified-arch.patch 1380 RMD160 2612cad105f442d4232b99e3054124e8037860bb SHA1 d82433c0b3520c87e05f1013a59b243ec65ebe97 SHA256 5e84bb51e0f9b3ceba270d53ad2a739dc534861df9acd6ab6852670f5a1357d7
|
||||||
AUX nvidia-169.07 639 RMD160 8baddb6fd1bf7f0e2688870a78e8ace051d62e3f SHA1 b30487ba2a24a6b1359d1fd831eeb1705060953c SHA256 a8c4860f008d53776fda7a17b59524f271236559af688e9a2c9845cbbcba1577
|
AUX nvidia-169.07 639 RMD160 8baddb6fd1bf7f0e2688870a78e8ace051d62e3f SHA1 b30487ba2a24a6b1359d1fd831eeb1705060953c SHA256 a8c4860f008d53776fda7a17b59524f271236559af688e9a2c9845cbbcba1577
|
||||||
AUX nvidia-drivers-pax-const.patch 833 RMD160 100c36ed4c7db0f30c0680b276a708cd5ed75749 SHA1 b336665366340fec6bd400f36d3e4b9de86473f5 SHA256 74ba8aa3b03e1b4a0515fd84c159eaeb7635fa1364e77544b01ff6f571f0e6d8
|
AUX nvidia-drivers-pax-const.patch 833 RMD160 100c36ed4c7db0f30c0680b276a708cd5ed75749 SHA1 b336665366340fec6bd400f36d3e4b9de86473f5 SHA256 74ba8aa3b03e1b4a0515fd84c159eaeb7635fa1364e77544b01ff6f571f0e6d8
|
||||||
AUX nvidia-drivers-pax-usercopy.patch 2197 RMD160 f1fe01e79f52650f7ad377fc82f6526278d0aad8 SHA1 c8d96c2ff282f8d2ffbea4f34e909e3890a3f13b SHA256 8f5ec453bcad9439097f7bbbd2c211f8001fceb9dd00ef4eb30e94d34fcfde58
|
AUX nvidia-drivers-pax-usercopy.patch 2350 RMD160 c102590aba1b4191c08fc0ac045640bab3f8f5e2 SHA1 5cd57aef42db6dbb5cf97ed773ec632d3a5f3ec7 SHA256 56980f43db38d582bc6a9bfd881973fce6e3e056b77ce4f4005bdcf79526a863
|
||||||
DIST NVIDIA-FreeBSD-x86-290.10.tar.gz 32042469 RMD160 712cd816ab24319d03ae475af0ac2a56518ef58b SHA1 4fe79060b9e475e4a74b7b17e95410bad1f33427 SHA256 f5accbdac0b231a8073f76c1d1d8ace7cb98ebe167888c31183a2752a669ee92
|
DIST NVIDIA-FreeBSD-x86-290.10.tar.gz 32042469 RMD160 712cd816ab24319d03ae475af0ac2a56518ef58b SHA1 4fe79060b9e475e4a74b7b17e95410bad1f33427 SHA256 f5accbdac0b231a8073f76c1d1d8ace7cb98ebe167888c31183a2752a669ee92
|
||||||
DIST NVIDIA-Linux-x86-290.10.run 34691272 RMD160 ddcee14e7b474a646a707fd966cc1d223d3177eb SHA1 dfc095db2bdca672e6cfe7878a75c5d25d8c54a9 SHA256 99be8f53aa1f777445e5a4cac27acd7d85990db712b5c29caac865145fc5adaa
|
DIST NVIDIA-Linux-x86-290.10.run 34691272 RMD160 ddcee14e7b474a646a707fd966cc1d223d3177eb SHA1 dfc095db2bdca672e6cfe7878a75c5d25d8c54a9 SHA256 99be8f53aa1f777445e5a4cac27acd7d85990db712b5c29caac865145fc5adaa
|
||||||
DIST NVIDIA-Linux-x86_64-290.10.run 58334192 RMD160 a850a83643d507ff84be76691188a5ecd870c4d8 SHA1 f3e8b43248d9d167b1c3f67a8cba9c1f2c53e583 SHA256 34a2ab07f4ae7afdeb2c8415f3f37c1099e6690eb25f3dbef92eca771f7ce4cd
|
DIST NVIDIA-Linux-x86_64-290.10.run 58334192 RMD160 a850a83643d507ff84be76691188a5ecd870c4d8 SHA1 f3e8b43248d9d167b1c3f67a8cba9c1f2c53e583 SHA256 34a2ab07f4ae7afdeb2c8415f3f37c1099e6690eb25f3dbef92eca771f7ce4cd
|
||||||
EBUILD nvidia-drivers-290.10.ebuild 17253 RMD160 32a3ae18c749b162917ac6a72c59646479affe4b SHA1 db78e4756ae0362ff0205b48880c3692df2343e0 SHA256 a2206ff79fad2008967c718b1ff6ce177f5cb8b3b7816cbfee69aaef540322ee
|
EBUILD nvidia-drivers-290.10.ebuild 17265 RMD160 c1d003496d4a3fe65406a1fd782ed4d8f281a034 SHA1 f8fe1ec50df4872c8bd0511f9ecaba3c6fe48de2 SHA256 1f35bdfc1b43060092598c775056fe635167a0bfc58aebe8c54d2aa31a60020e
|
||||||
MISC ebuild.diff 736 RMD160 b0c43ad9d4f2dbbd35a195b22b2bea698dbbafcd SHA1 753ad14db964fe133936e497aaed56b8e04256d2 SHA256 5ca532e00bec17cd5193a19a6fcae5231d3fe0b8c68f3b2e8dd480ac0dc1f67e
|
MISC ebuild.diff 724 RMD160 1d864711efab5e60f1a3f14a5a63273ec8dc944e SHA1 ba16548f74141c9c7e95257d0c25a5a6488c35db SHA256 2dddfc340137c21bce4886672e4e212e3e21fe9c6c62c1b5dab7096cbb92c523
|
||||||
|
@ -1,7 +1,37 @@
|
|||||||
diff -u kernel/nv-linux.h kernel-orig/nv-linux.h
|
diff -urp kernel.orig/nv.c kernel/nv.c
|
||||||
--- kernel-orig/nv-linux.h 2011-09-23 17:32:09.000000000 -0700
|
--- kernel.orig/nv.c 2011-09-24 02:32:09.000000000 +0200
|
||||||
+++ kernel/nv-linux.h 2011-10-10 18:01:45.391793788 -0700
|
+++ kernel/nv.c 2011-10-05 19:13:41.474242252 +0200
|
||||||
@@ -695,16 +695,16 @@
|
@@ -1105,7 +1105,7 @@ static int __init nvidia_init_module(voi
|
||||||
|
NV_SPIN_LOCK_INIT(&km_lock);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
- NV_KMEM_CACHE_CREATE(nv_stack_t_cache, "nv_stack_t", nv_stack_t);
|
||||||
|
+ NV_KMEM_CACHE_CREATE(nv_stack_t_cache, "nv_stack_t", nv_stack_t, SLAB_USERCOPY);
|
||||||
|
if (nv_stack_t_cache == NULL)
|
||||||
|
{
|
||||||
|
nv_printf(NV_DBG_ERRORS, "NVRM: stack cache allocation failed!\n");
|
||||||
|
@@ -1220,7 +1220,7 @@ static int __init nvidia_init_module(voi
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
- NV_KMEM_CACHE_CREATE(nv_pte_t_cache, "nv_pte_t", nv_pte_t);
|
||||||
|
+ NV_KMEM_CACHE_CREATE(nv_pte_t_cache, "nv_pte_t", nv_pte_t, 0);
|
||||||
|
if (nv_pte_t_cache == NULL)
|
||||||
|
{
|
||||||
|
rc = -ENOMEM;
|
||||||
|
@@ -1229,7 +1229,7 @@ static int __init nvidia_init_module(voi
|
||||||
|
}
|
||||||
|
|
||||||
|
NV_KMEM_CACHE_CREATE(nvidia_p2p_page_t_cache, "nvidia_p2p_page_t",
|
||||||
|
- nvidia_p2p_page_t);
|
||||||
|
+ nvidia_p2p_page_t, 0);
|
||||||
|
if (nvidia_p2p_page_t_cache == NULL)
|
||||||
|
{
|
||||||
|
rc = -ENOMEM;
|
||||||
|
diff -urp kernel.orig/nv-linux.h kernel/nv-linux.h
|
||||||
|
--- kernel.orig/nv-linux.h 2011-09-24 02:32:09.000000000 +0200
|
||||||
|
+++ kernel/nv-linux.h 2011-10-05 19:14:42.522238996 +0200
|
||||||
|
@@ -695,16 +695,16 @@ extern nv_spinlock_t km_lock;
|
||||||
|
|
||||||
#if defined(NV_KMEM_CACHE_CREATE_PRESENT)
|
#if defined(NV_KMEM_CACHE_CREATE_PRESENT)
|
||||||
#if (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 6)
|
#if (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 6)
|
||||||
@ -17,38 +47,8 @@ diff -u kernel/nv-linux.h kernel-orig/nv-linux.h
|
|||||||
+#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type, flags) \
|
+#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type, flags) \
|
||||||
{ \
|
{ \
|
||||||
kmem_cache = kmem_cache_create(name, sizeof(type), \
|
kmem_cache = kmem_cache_create(name, sizeof(type), \
|
||||||
+ 0, flags, NULL); \
|
|
||||||
- 0, 0, NULL); \
|
- 0, 0, NULL); \
|
||||||
|
+ 0, flags, NULL); \
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
#error "NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT value unrecognized!"
|
#error "NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT value unrecognized!"
|
||||||
diff -u kernel/nv.c kernel-orig/nv.c
|
|
||||||
--- kernel-orig/nv.c 2011-09-23 17:32:09.000000000 -0700
|
|
||||||
+++ kernel/nv.c 2011-10-10 18:49:39.331880626 -0700
|
|
||||||
@@ -1105,7 +1105,7 @@
|
|
||||||
NV_SPIN_LOCK_INIT(&km_lock);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
- NV_KMEM_CACHE_CREATE(nv_stack_t_cache, "nv_stack_t", nv_stack_t);
|
|
||||||
+ NV_KMEM_CACHE_CREATE(nv_stack_t_cache, "nv_stack_t", nv_stack_t, SLAB_USERCOPY);
|
|
||||||
if (nv_stack_t_cache == NULL)
|
|
||||||
{
|
|
||||||
nv_printf(NV_DBG_ERRORS, "NVRM: stack cache allocation failed!\n");
|
|
||||||
@@ -1220,7 +1220,7 @@
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
- NV_KMEM_CACHE_CREATE(nv_pte_t_cache, "nv_pte_t", nv_pte_t);
|
|
||||||
+ NV_KMEM_CACHE_CREATE(nv_pte_t_cache, "nv_pte_t", nv_pte_t, 0);
|
|
||||||
if (nv_pte_t_cache == NULL)
|
|
||||||
{
|
|
||||||
rc = -ENOMEM;
|
|
||||||
@@ -1229,7 +1229,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
NV_KMEM_CACHE_CREATE(nvidia_p2p_page_t_cache, "nvidia_p2p_page_t",
|
|
||||||
- nvidia_p2p_page_t);
|
|
||||||
+ nvidia_p2p_page_t, 0);
|
|
||||||
if (nvidia_p2p_page_t_cache == NULL)
|
|
||||||
{
|
|
||||||
rc = -ENOMEM;
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
# Copyright 1999-2011 Gentoo Foundation
|
# Copyright 1999-2012 Gentoo Foundation
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-290.06.ebuild,v 1.1 2011/11/04 18:11:42 cardoe Exp $
|
# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-290.10.ebuild,v 1.4 2012/01/18 23:11:13 ulm Exp $
|
||||||
|
|
||||||
EAPI="2"
|
EAPI="2"
|
||||||
|
|
||||||
inherit eutils multilib versionator linux-mod flag-o-matic nvidia-driver
|
inherit eutils multilib portability versionator linux-mod flag-o-matic nvidia-driver
|
||||||
|
|
||||||
X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
|
X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
|
||||||
AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
|
AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
|
||||||
@ -12,13 +12,13 @@ X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
|
|||||||
|
|
||||||
DESCRIPTION="NVIDIA X11 driver and GLX libraries"
|
DESCRIPTION="NVIDIA X11 driver and GLX libraries"
|
||||||
HOMEPAGE="http://www.nvidia.com/"
|
HOMEPAGE="http://www.nvidia.com/"
|
||||||
SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
|
SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
|
||||||
amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
|
amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
|
||||||
x86-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
|
x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
|
||||||
|
|
||||||
LICENSE="NVIDIA"
|
LICENSE="NVIDIA"
|
||||||
SLOT="0"
|
SLOT="0"
|
||||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
KEYWORDS="-* amd64 x86 ~x86-fbsd"
|
||||||
IUSE="acpi custom-cflags gtk multilib kernel_linux pax_kernel"
|
IUSE="acpi custom-cflags gtk multilib kernel_linux pax_kernel"
|
||||||
RESTRICT="strip"
|
RESTRICT="strip"
|
||||||
EMULTILIB_PKG="true"
|
EMULTILIB_PKG="true"
|
||||||
@ -288,7 +288,6 @@ src_prepare() {
|
|||||||
# If greater than 2.6.5 use M= instead of SUBDIR=
|
# If greater than 2.6.5 use M= instead of SUBDIR=
|
||||||
convert_to_m "${NV_SRC}"/Makefile.kbuild
|
convert_to_m "${NV_SRC}"/Makefile.kbuild
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if use pax_kernel; then
|
if use pax_kernel; then
|
||||||
epatch "${FILESDIR}"/nvidia-drivers-pax-const.patch
|
epatch "${FILESDIR}"/nvidia-drivers-pax-const.patch
|
||||||
epatch "${FILESDIR}"/nvidia-drivers-pax-usercopy.patch
|
epatch "${FILESDIR}"/nvidia-drivers-pax-usercopy.patch
|
||||||
|
Loading…
Reference in New Issue
Block a user