From: abenson <abenson@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: [PR PATCH] nvidia470: add patch for linux 6.5
Date: Thu, 05 Oct 2023 19:23:12 +0200 [thread overview]
Message-ID: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-46450@inbox.vuxu.org> (raw)
[-- Attachment #1: Type: text/plain, Size: 503 bytes --]
There is a new pull request by abenson against master on the void-packages repository
https://github.com/abenson/void-packages nvidia470_linux6.5
https://github.com/void-linux/void-packages/pull/46450
nvidia470: add patch for linux 6.5
Please test!
#### Testing the changes
- I tested the changes in this PR: **NO**
#### Local build testing
- I built this PR locally for my native architecture, x86_64
A patch file from https://github.com/void-linux/void-packages/pull/46450.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-nvidia470_linux6.5-46450.patch --]
[-- Type: text/x-diff, Size: 4201 bytes --]
From ccb6bf13e6338cd3667c40c09660316693a636ba Mon Sep 17 00:00:00 2001
From: Andrew Benson <abenson+void@gmail.com>
Date: Thu, 5 Oct 2023 12:21:47 -0500
Subject: [PATCH] nvidia470: add patch for linux 6.5
---
srcpkgs/nvidia470/patches/linux-6.5.patch | 82 +++++++++++++++++++++++
srcpkgs/nvidia470/template | 2 +-
2 files changed, 83 insertions(+), 1 deletion(-)
create mode 100644 srcpkgs/nvidia470/patches/linux-6.5.patch
diff --git a/srcpkgs/nvidia470/patches/linux-6.5.patch b/srcpkgs/nvidia470/patches/linux-6.5.patch
new file mode 100644
index 0000000000000..f3df4cee06b51
--- /dev/null
+++ b/srcpkgs/nvidia470/patches/linux-6.5.patch
@@ -0,0 +1,82 @@
+From 0ca9614e5b074d3dd01e95f47b3555f48e74f622 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Joan=20Bruguera=20Mic=C3=B3?= <joanbrugueram@gmail.com>
+Date: Wed, 17 May 2023 21:54:08 +0000
+Subject: [PATCH] Tentative fix for NVIDIA 470.182.03 driver for Linux 6.5-rc1
+
+---
+ common/inc/nv-mm.h | 45 +++++++++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 43 insertions(+), 2 deletions(-)
+
+diff --git a/common/inc/nv-mm.h b/common/inc/nv-mm.h
+index 54f6f60..25333e8 100644
+--- a/common/inc/nv-mm.h
++++ b/common/inc/nv-mm.h
+@@ -23,6 +23,7 @@
+ #ifndef __NV_MM_H__
+ #define __NV_MM_H__
+
++#include <linux/version.h>
+ #include "conftest.h"
+
+ #if !defined(NV_VM_FAULT_T_IS_PRESENT)
+@@ -47,7 +48,27 @@ typedef int vm_fault_t;
+ *
+ */
+
+-#if defined(NV_GET_USER_PAGES_HAS_TASK_STRUCT)
++// Rel. commit. "mm/gup: remove unused vmas parameter from get_user_pages()" (Lorenzo Stoakes, 14 May 2023)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 5, 0)
++#include <linux/mm.h>
++
++static inline long NV_GET_USER_PAGES(unsigned long start,
++ unsigned long nr_pages,
++ int write,
++ int force,
++ struct page **pages,
++ struct vm_area_struct **vmas)
++{
++ unsigned int flags = 0;
++
++ if (write)
++ flags |= FOLL_WRITE;
++ if (force)
++ flags |= FOLL_FORCE;
++
++ return get_user_pages(start, nr_pages, flags, pages);
++}
++#elif defined(NV_GET_USER_PAGES_HAS_TASK_STRUCT)
+ #if defined(NV_GET_USER_PAGES_HAS_WRITE_AND_FORCE_ARGS)
+ #define NV_GET_USER_PAGES(start, nr_pages, write, force, pages, vmas) \
+ get_user_pages(current, current->mm, start, nr_pages, write, force, pages, vmas)
+@@ -130,7 +151,27 @@ typedef int vm_fault_t;
+ *
+ */
+
+-#if defined(NV_GET_USER_PAGES_REMOTE_PRESENT)
++// Rel. commit. "mm/gup: remove unused vmas parameter from get_user_pages_remote()" (Lorenzo Stoakes, 14 May 2023)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 5, 0)
++static inline long NV_GET_USER_PAGES_REMOTE(struct task_struct *tsk,
++ struct mm_struct *mm,
++ unsigned long start,
++ unsigned long nr_pages,
++ int write,
++ int force,
++ struct page **pages,
++ struct vm_area_struct **vmas)
++{
++ unsigned int flags = 0;
++
++ if (write)
++ flags |= FOLL_WRITE;
++ if (force)
++ flags |= FOLL_FORCE;
++
++ return get_user_pages_remote(mm, start, nr_pages, flags, pages, NULL);
++}
++#elif defined(NV_GET_USER_PAGES_REMOTE_PRESENT)
+ #if defined(NV_GET_USER_PAGES_REMOTE_HAS_WRITE_AND_FORCE_ARGS)
+ #define NV_GET_USER_PAGES_REMOTE get_user_pages_remote
+ #else
+--
+2.41.0
+
diff --git a/srcpkgs/nvidia470/template b/srcpkgs/nvidia470/template
index fb2d1b8260ecc..d095ce2cdeacf 100644
--- a/srcpkgs/nvidia470/template
+++ b/srcpkgs/nvidia470/template
@@ -4,7 +4,7 @@ _desc="NVIDIA drivers (GKxxx “Kepler”)"
pkgname=nvidia470
version=470.199.02
-revision=1
+revision=2
maintainer="Andrew Benson <abenson+void@gmail.com>"
license="custom:NVIDIA Proprietary"
homepage="https://www.nvidia.com/en-us/drivers/unix/"
next reply other threads:[~2023-10-05 17:23 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-05 17:23 abenson [this message]
2023-10-11 1:31 ` [PR PATCH] [Merged]: " abenson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-46450@inbox.vuxu.org \
--to=abenson@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).