diff options
author | Sinyria | 2023-07-03 17:37:33 +0200 |
---|---|---|
committer | Sinyria | 2023-07-03 17:37:33 +0200 |
commit | 95831031e46fd2f40e8c8adf6a6ef9d21deb2d74 (patch) | |
tree | 4b0a6e63a617ff66badfe00c7c5c3a53d19096e8 | |
parent | 40742c7b013f35380be7ca3e7f3ef4f0fdef9ce5 (diff) | |
download | aur-95831031e46fd2f40e8c8adf6a6ef9d21deb2d74.tar.gz |
updated to 470.199.02 and 6.4 kernel
-rw-r--r-- | PKGBUILD | 12 | ||||
-rw-r--r-- | kernel-6.3.patch | 117 |
2 files changed, 4 insertions, 125 deletions
@@ -6,8 +6,8 @@ pkgbase=nvidia-470xx-utils pkgname=('nvidia-470xx-utils' 'opencl-nvidia-470xx' 'nvidia-470xx-dkms') -pkgver=470.182.03 -pkgrel=2 +pkgver=470.199.02 +pkgrel=1 arch=('x86_64') url="http://www.nvidia.com/" license=('custom') @@ -16,13 +16,11 @@ _pkg="NVIDIA-Linux-x86_64-${pkgver}" source=('nvidia-drm-outputclass.conf' 'nvidia-470xx-utils.sysusers' 'nvidia-470xx.rules' - "https://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/${_pkg}.run" - "kernel-6.3.patch") + "https://us.download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/${_pkg}.run") sha512sums=('de7116c09f282a27920a1382df84aa86f559e537664bb30689605177ce37dc5067748acf9afd66a3269a6e323461356592fdfc624c86523bf105ff8fe47d3770' '4b3ad73f5076ba90fe0b3a2e712ac9cde76f469cd8070280f960c3ce7dc502d1927f525ae18d008075c8f08ea432f7be0a6c3a7a6b49c361126dcf42f97ec499' 'e307e5fe005dfafee35c179c5f215e22a85dfd367a9b60d5092eee96f869d8ce4595fae33ce6febb74721974c6f781a53418ce1a3210768632347471ae3f5594' - '73619d65bd3267427acaf2deee07a2c98c490df937aa13e2c95d54cfd19ce2a82a91d3a5aa886dbe88f6230251f9cf54c38f5841cfacd77e53301e8d61fa3d7d' - 'e7343f022263690030bdcbc9b91cd775c7c8c24da4f75e6583494464d92eeeb01965bc9e628566faaf6c91fb5519881346d44c4e7d1c7fe8b7c6da89a7620036') + 'e1265b6266473af652e9d7bf85dcd76e312af281c5f4f158ab322e34d378738acb87c30cfff7bf1f6e1b238883e7f665d9fc5151b1e0078dd9aece5a52655405') create_links() { # create soname links @@ -42,8 +40,6 @@ prepare() { cd kernel - patch -p1 -i "$srcdir/kernel-6.3.patch" - sed -i "s/__VERSION_STRING/${pkgver}/" dkms.conf sed -i 's/__JOBS/`nproc`/' dkms.conf sed -i 's/__DKMS_MODULES//' dkms.conf diff --git a/kernel-6.3.patch b/kernel-6.3.patch deleted file mode 100644 index 11d29cb19853..000000000000 --- a/kernel-6.3.patch +++ /dev/null @@ -1,117 +0,0 @@ -From a77f2da778f4a62695a6c7d26bba674d59ad9170 Mon Sep 17 00:00:00 2001 -From: Joan Bruguera <joanbrugueram@gmail.com> -Date: Sat, 25 Feb 2023 10:57:09 +0000 -Subject: [PATCH] Tentative fix for NVIDIA 470.161.03 driver for Linux 6.3-rc1 - ---- - common/inc/nv-linux.h | 13 +++++++++++++ - nvidia-drm/nvidia-drm-gem-user-memory.c | 7 ++++--- - nvidia-uvm/uvm.c | 2 +- - nvidia/nv-mmap.c | 12 ++++++------ - 4 files changed, 24 insertions(+), 10 deletions(-) - -diff --git a/common/inc/nv-linux.h b/common/inc/nv-linux.h -index f8df9e3..5b22cf1 100644 ---- a/common/inc/nv-linux.h -+++ b/common/inc/nv-linux.h -@@ -1988,4 +1988,17 @@ static inline void nv_mutex_destroy(struct mutex *lock) - - } - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 3, 0) -+// Rel. commit "mm: introduce vma->vm_flags wrapper functions" (Suren Baghdasaryan, 26 Jan 2023) -+static inline void vm_flags_set(struct vm_area_struct *vma, vm_flags_t flags) -+{ -+ vma->vm_flags |= flags; -+} -+ -+static inline void vm_flags_clear(struct vm_area_struct *vma, vm_flags_t flags) -+{ -+ vma->vm_flags &= ~flags; -+} -+#endif -+ - #endif /* _NV_LINUX_H_ */ -diff --git a/nvidia-drm/nvidia-drm-gem-user-memory.c b/nvidia-drm/nvidia-drm-gem-user-memory.c -index 8824daa..3ea9099 100644 ---- a/nvidia-drm/nvidia-drm-gem-user-memory.c -+++ b/nvidia-drm/nvidia-drm-gem-user-memory.c -@@ -35,6 +35,7 @@ - #include "linux/dma-buf.h" - #include "linux/mm.h" - #include "nv-mm.h" -+#include "nv-linux.h" - - static inline - void __nv_drm_gem_user_memory_free(struct nv_drm_gem_object *nv_gem) -@@ -92,9 +93,9 @@ static int __nv_drm_gem_user_memory_mmap(struct nv_drm_gem_object *nv_gem, - return -EINVAL; - } - -- vma->vm_flags &= ~VM_PFNMAP; -- vma->vm_flags &= ~VM_IO; -- vma->vm_flags |= VM_MIXEDMAP; -+ vm_flags_clear(vma, VM_PFNMAP); -+ vm_flags_clear(vma, VM_IO); -+ vm_flags_set(vma, VM_MIXEDMAP); - - return 0; - } -diff --git a/nvidia-uvm/uvm.c b/nvidia-uvm/uvm.c -index 3e7318d..7eddff7 100644 ---- a/nvidia-uvm/uvm.c -+++ b/nvidia-uvm/uvm.c -@@ -812,7 +812,7 @@ static int uvm_mmap(struct file *filp, struct vm_area_struct *vma) - // Using VM_DONTCOPY would be nice, but madvise(MADV_DOFORK) can reset that - // so we have to handle vm_open on fork anyway. We could disable MADV_DOFORK - // with VM_IO, but that causes other mapping issues. -- vma->vm_flags |= VM_MIXEDMAP | VM_DONTEXPAND; -+ vm_flags_set(vma, VM_MIXEDMAP | VM_DONTEXPAND); - - vma->vm_ops = &uvm_vm_ops_managed; - -diff --git a/nvidia/nv-mmap.c b/nvidia/nv-mmap.c -index df514c9..8f85ff6 100644 ---- a/nvidia/nv-mmap.c -+++ b/nvidia/nv-mmap.c -@@ -447,7 +447,7 @@ static int nvidia_mmap_numa( - } - - // Needed for the linux kernel for mapping compound pages -- vma->vm_flags |= VM_MIXEDMAP; -+ vm_flags_set(vma, VM_MIXEDMAP); - - for (i = 0, addr = mmap_context->page_array[0]; i < pages; - addr = mmap_context->page_array[++i], start += PAGE_SIZE) -@@ -596,7 +596,7 @@ int nvidia_mmap_helper( - } - up(&nvl->mmap_lock); - -- vma->vm_flags |= VM_IO | VM_PFNMAP | VM_DONTEXPAND; -+ vm_flags_set(vma, VM_IO | VM_PFNMAP | VM_DONTEXPAND); - } - else - { -@@ -663,15 +663,15 @@ int nvidia_mmap_helper( - - NV_PRINT_AT(NV_DBG_MEMINFO, at); - -- vma->vm_flags |= (VM_IO | VM_LOCKED | VM_RESERVED); -- vma->vm_flags |= (VM_DONTEXPAND | VM_DONTDUMP); -+ vm_flags_set(vma, VM_IO | VM_LOCKED | VM_RESERVED); -+ vm_flags_set(vma, VM_DONTEXPAND | VM_DONTDUMP); - } - - if ((prot & NV_PROTECT_WRITEABLE) == 0) - { - vma->vm_page_prot = NV_PGPROT_READ_ONLY(vma->vm_page_prot); -- vma->vm_flags &= ~VM_WRITE; -- vma->vm_flags &= ~VM_MAYWRITE; -+ vm_flags_clear(vma, VM_WRITE); -+ vm_flags_clear(vma, VM_MAYWRITE); - } - - vma->vm_ops = &nv_vm_ops; --- -2.39.2 - |