summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO4
-rw-r--r--PKGBUILD5
-rw-r--r--linux-4.12.patch43
3 files changed, 50 insertions, 2 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 3aecfbd02645..d7b436a48cb7 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = nvidia-96xx-dkms
pkgdesc = NVIDIA kernel module sources (DKMS), 96xx branch
pkgver = 96.43.23
- pkgrel = 8
+ pkgrel = 9
url = http://www.nvidia.com/
arch = i686
arch = x86_64
@@ -21,6 +21,7 @@ pkgbase = nvidia-96xx-dkms
source = linux-4.0.patch
source = linux-4.3.patch
source = linux-4.10.patch
+ source = linux-4.12.patch
source = dkms.conf
md5sums = 944ed806c8d0f9174d5e9e16ae065bf6
md5sums = f2e605724a13ee01bf290df3bf9a3a93
@@ -29,6 +30,7 @@ pkgbase = nvidia-96xx-dkms
md5sums = 89072d9c1b37867f01dd7a41521c0ed1
md5sums = 20bde657bb715e16295d7e82fe799fca
md5sums = 8a46a9e33749ae1d4d14b1117a36d95c
+ md5sums = f04b8493dd9cd9794559882a9e2c94ee
md5sums = d28e74675462b215f080960c130c43fc
source_i686 = http://download.nvidia.com/XFree86/Linux-x86/96.43.23/NVIDIA-Linux-x86-96.43.23-pkg0.run
md5sums_i686 = ca0bc6ae3b37cb259f3a906b4dc4670b
diff --git a/PKGBUILD b/PKGBUILD
index 52675058111f..5691645ccdff 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -5,7 +5,7 @@
pkgname=nvidia-96xx-dkms
pkgver=96.43.23
-pkgrel=8
+pkgrel=9
pkgdesc="NVIDIA kernel module sources (DKMS), 96xx branch"
arch=('i686' 'x86_64')
[ "$CARCH" = "i686" ] && _arch=x86
@@ -26,6 +26,7 @@ source=(173.14.36-37.patch
linux-4.0.patch
linux-4.3.patch
linux-4.10.patch
+ linux-4.12.patch
dkms.conf)
source_i686=("http://download.nvidia.com/XFree86/Linux-x86/$pkgver/NVIDIA-Linux-x86-$pkgver-pkg0.run")
source_x86_64=("http://download.nvidia.com/XFree86/Linux-x86_64/$pkgver/NVIDIA-Linux-x86_64-$pkgver-pkg0.run")
@@ -36,6 +37,7 @@ md5sums=('944ed806c8d0f9174d5e9e16ae065bf6'
'89072d9c1b37867f01dd7a41521c0ed1'
'20bde657bb715e16295d7e82fe799fca'
'8a46a9e33749ae1d4d14b1117a36d95c'
+ 'f04b8493dd9cd9794559882a9e2c94ee'
'd28e74675462b215f080960c130c43fc')
md5sums_i686=('ca0bc6ae3b37cb259f3a906b4dc4670b')
md5sums_x86_64=('a043fe8dd639bd00b1792eea7a195677')
@@ -51,6 +53,7 @@ prepare() {
patch -p1 --no-backup-if-mismatch -i "$srcdir/linux-4.0.patch"
patch -p1 --no-backup-if-mismatch -i "$srcdir/linux-4.3.patch"
patch -p1 --no-backup-if-mismatch -i "$srcdir/linux-4.10.patch"
+ patch -p1 --no-backup-if-mismatch -i "$srcdir/linux-4.12.patch"
}
package() {
diff --git a/linux-4.12.patch b/linux-4.12.patch
new file mode 100644
index 000000000000..5898da0dc654
--- /dev/null
+++ b/linux-4.12.patch
@@ -0,0 +1,43 @@
+diff -Naur nv.orig/conftest.sh nv/conftest.sh
+--- nv.orig/conftest.sh 2017-10-16 16:39:06.853784000 +0200
++++ nv/conftest.sh 2017-10-16 16:40:14.022586963 +0200
+@@ -238,7 +238,11 @@
+ # Determine if the set_pages_uc() function is present.
+ #
+ echo "$CONFTEST_PREAMBLE
+- #include <asm/cacheflush.h>
++ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
++ #include <asm/set_memory.h>
++ #else
++ #include <asm/cacheflush.h>
++ #endif
+ void conftest_set_pages_uc(void) {
+ set_pages_uc();
+ }" > conftest$$.c
+@@ -268,8 +272,10 @@
+ #include <linux/version.h>
+ #include <linux/utsname.h>
+ #include <linux/mm.h>
+- #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 0)
+- #include <asm/cacheflush.h>
++ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
++ #include <asm/set_memory.h>
++ #elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 0)
++ #include <asm/cacheflush.h>
+ #endif
+ void conftest_change_page_attr(void) {
+ change_page_attr();
+diff -Naur nv.orig/nv-vm.c nv/nv-vm.c
+--- nv.orig/nv-vm.c 2012-09-01 12:48:26.000000000 +0200
++++ nv/nv-vm.c 2017-10-16 16:40:14.035920720 +0200
+@@ -14,6 +14,10 @@
+ #include "nv-linux.h"
+ #include "nv-vm.h"
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
++ #include <asm/set_memory.h>
++#endif
++
+ #if defined(NV_DBG_MEM)
+ #define NV_DEFAULT_LIST_PAGE_COUNT 10
+