summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorgraysky2018-12-31 09:42:17 -0500
committergraysky2018-12-31 09:42:17 -0500
commit8ab9b3fc233027a2610ac736856d87dad0b2ba6d (patch)
tree235502b6b1fc7c34b39ab9debace808a21c28fa5
parent20ddb74ab18c5846084a06a1aebc37347f76cdda (diff)
downloadaur-8ab9b3fc233027a2610ac736856d87dad0b2ba6d.tar.gz
Update to 390.87-10
-rw-r--r--.SRCINFO13
-rw-r--r--PKGBUILD17
-rw-r--r--kernel-4.20.patch43
3 files changed, 60 insertions, 13 deletions
diff --git a/.SRCINFO b/.SRCINFO
index bc96a4ddf34..8383935fbd1 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,18 +1,18 @@
# Generated by mksrcinfo v8
-# Thu Dec 13 23:27:32 UTC 2018
+# Mon Dec 31 14:42:17 UTC 2018
pkgbase = nvidia-390xx-ck
pkgdesc = NVIDIA drivers for linux-ck, 390xx legacy branch.
pkgver = 390.87
- pkgrel = 9
+ pkgrel = 10
url = http://www.nvidia.com/
arch = x86_64
license = custom
makedepends = nvidia-390xx-utils=390.87
makedepends = libglvnd
- makedepends = linux-ck-headers>=4.19
- makedepends = linux-ck-headers<4.20
- depends = linux-ck>=4.19
- depends = linux-ck<4.20
+ makedepends = linux-ck-headers>=4.20
+ makedepends = linux-ck-headers<4.21
+ depends = linux-ck>=4.20
+ depends = linux-ck<4.21
depends = libglvnd
depends = nvidia-390xx-utils=390.87
conflicts = nvidia-340xx-ck
@@ -22,6 +22,7 @@ pkgbase = nvidia-390xx-ck
source = kernel-4.16.patch
source = kernel-4.19.patch
source = unfuck.patch
+ source = kernel-4.20.patch
sha256sums = c7c07151e17f610af11f7870560d96c3a3ee9bb91ba1bb82fcc7b5d473d40b66
sha256sums = 622ac792ec200b2239cb663c0010392118b78c9904973d82cd261165c16d6385
sha256sums = e425320bd3712cc789035d5936412724b0b410f50463980c0a48715fd3f8c431
diff --git a/PKGBUILD b/PKGBUILD
index 0206981e447..2106b908e2c 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -4,21 +4,21 @@
pkgname=nvidia-390xx-ck
pkgver=390.87
-pkgrel=9
+pkgrel=10
_extramodules=extramodules-ck
_pkgdesc="NVIDIA drivers for linux-ck, 390xx legacy branch."
pkgdesc="$_pkgdesc"
arch=('x86_64')
url="http://www.nvidia.com/"
-makedepends=("nvidia-390xx-utils=${pkgver}" 'libglvnd' 'linux-ck-headers>=4.19' 'linux-ck-headers<4.20')
-depends=('linux-ck>=4.19' 'linux-ck<4.20' 'libglvnd' "nvidia-390xx-utils=${pkgver}")
+makedepends=("nvidia-390xx-utils=${pkgver}" 'libglvnd' 'linux-ck-headers>=4.20' 'linux-ck-headers<4.21')
+depends=('linux-ck>=4.20' 'linux-ck<4.21' 'libglvnd' "nvidia-390xx-utils=${pkgver}")
conflicts=('nvidia-340xx-ck' 'nvidia-ck')
#groups=('ck-generic')
#replaces=()
license=('custom')
options=('!strip')
source=("http://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run"
-kernel-4.16.patch kernel-4.19.patch unfuck.patch)
+kernel-4.16.patch kernel-4.19.patch unfuck.patch kernel-4.20.patch)
sha256sums=('c7c07151e17f610af11f7870560d96c3a3ee9bb91ba1bb82fcc7b5d473d40b66'
'622ac792ec200b2239cb663c0010392118b78c9904973d82cd261165c16d6385'
'e425320bd3712cc789035d5936412724b0b410f50463980c0a48715fd3f8c431'
@@ -36,15 +36,18 @@ prepare() {
# Ad-hoc patch
patch -Np1 -i ../kernel-4.19.patch
-
+
+ # struct ipmi_user
+ patch -Np1 -i ../kernel-4.20.patch
+
# https://bugs.archlinux.org/task/59199
patch -Np1 -i ../unfuck.patch
}
build() {
_kernver="$(cat /usr/lib/modules/${_extramodules}/version)"
- cd "${_pkg}"/kernel
- make SYSSRC=/usr/lib/modules/"${_kernver}/build" module
+ cd "${_pkg}"/kernel
+ make SYSSRC=/usr/lib/modules/"${_kernver}/build" module
}
package() {
diff --git a/kernel-4.20.patch b/kernel-4.20.patch
new file mode 100644
index 00000000000..7548fec4fad
--- /dev/null
+++ b/kernel-4.20.patch
@@ -0,0 +1,43 @@
+--- a/kernel/nvidia/os-interface.c
++++ b/kernel/nvidia/os-interface.c
+@@ -1670,7 +1670,7 @@
+
+ struct nv_ipmi_softc
+ {
+- ipmi_user_t p_user; // ptr to ipmi_msghandler user structure
++ struct ipmi_user *p_user;
+ spinlock_t msg_lock;
+ struct list_head msgs;
+ NvU32 seqNum; //request sequence number
+@@ -1679,7 +1679,7 @@
+ static inline int
+ nv_ipmi_set_my_address
+ (
+- ipmi_user_t user,
++ struct ipmi_user *user,
+ unsigned char address
+ )
+ {
+--- a/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.c
++++ b/kernel/nvidia-drm/nvidia-drm-gem-nvkms-memory.c
+@@ -20,6 +20,8 @@
+ * DEALINGS IN THE SOFTWARE.
+ */
+
++#include <linux/version.h>
++
+ #include "nvidia-drm-conftest.h"
+
+ #if defined(NV_DRM_ATOMIC_MODESET_AVAILABLE)
+@@ -345,7 +347,11 @@ static int __nv_drm_vma_fault(struct vm_area_struct *vma,
+
+ page_offset = vmf->pgoff - drm_vma_node_start(&gem->vma_node);
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 0)
+ ret = vm_insert_pfn(vma, address, pfn + page_offset);
++#else
++ ret = vmf_insert_pfn(vma, address, pfn + page_offset);
++#endif
+
+ switch (ret) {
+ case 0: