Package Details: nvidia-390xx-dkms 390.157-12

Git Clone URL: https://aur.archlinux.org/nvidia-390xx-utils.git (read-only, click to copy)
Package Base: nvidia-390xx-utils
Description: NVIDIA drivers - module sources
Upstream URL: https://www.nvidia.com/
Licenses: custom
Provides: NVIDIA-MODULE
Submitter: svenstaro
Maintainer: jonathon (vnctdj)
Last Packager: vnctdj
Votes: 58
Popularity: 0.97
First Submitted: 2020-03-11 17:29 (UTC)
Last Updated: 2024-07-20 22:27 (UTC)

Pinned Comments

jonathon commented on 2022-05-26 09:46 (UTC)

Please don't flag this package out-of-date unless a new version has been released by NVIDIA.

jonathon commented on 2021-12-26 22:44 (UTC) (edited on 2021-12-26 22:44 (UTC) by jonathon)

The DKMS package guidelines are explicit that linux-headers should not be a dependency of any DKMS package.

As a concrete example of why including that as a hard dependency is a bad idea, what happens when linux is not an installed kernel?

jonathon commented on 2020-10-19 12:41 (UTC) (edited on 2021-05-11 14:18 (UTC) by jonathon)

PACKAGE NEEDS LONG TERM MAINTAINER

I have adopted the 390xx packages to keep them secure. I do not run any 390xx hardware so will not notice any breakages and cannot test any changes.

Until such time as someone else steps up to maintain these packages - ideally someone who actually has 390xx hardware - I have to rely on you to tell me what changes are needed.

Don't expect a response if you post only "this doesn't work", and do not email me to complain about the package not working!

Use this forum thread for discussion: https://bbs.archlinux.org/viewtopic.php?pid=1946926

A binary package is also available in my kernel-lts unofficial user repository.

Latest Comments

1 2 3 4 5 6 .. 26 Next › Last »

drankinatty commented on 2024-09-27 00:52 (UTC) (edited on 2024-10-01 23:57 (UTC) by drankinatty)

Thank goodness for small favors! I've been following the Arch 6.11 open-driver issues and was hoping that would not impact the closed source drivers as well. The only worrying part was the change to the fbdev header. But I look forward to the release and test -- and success :)

Update - openSUSE Tumbleweed just went to the 6.11 kernel and the 390xx driver built and functions without change from the 6.10 kernel. Thankfully!

Update 2 - Arch just released the 6.11 kernel, and the 390xx driver works fine without any patching needed. Next challenge will be the 6.12 kernel.

canolucas commented on 2024-09-21 01:03 (UTC) (edited on 2024-09-21 01:06 (UTC) by canolucas)

ok so it looks like linux 3.11 hit the testing repo.. i'll give it a try a.. hopefully everything works fine after reboot.. fingers crossed

UPDATE: everything worked fine, looks like linux 3.11 is compatible with the current version of this driver, so apparently no patching is needed this time..

drankinatty commented on 2024-09-16 18:09 (UTC) (edited on 2024-09-19 20:49 (UTC) by drankinatty)

6.11 kernel was released, time to start the patch scramble. I'll start looking, but if anybody has one already, please post a link here :) Nothing in the herecura repo yet. Indications are a patch will be needed Fedora Nvidia 470 driver issue with 6.11

Well after a few days of scouring for information, I'm cautiously optimistic that the driver may build without modification on the 6.11 kernel. The Fedora problem is a runtime problem, not a build issue, The AUR package for the 470xx driver is building on 6.11rc7 without changes. However it is impossible to draw a conclusion from the "absence of information" surrounding whether a patch is needed or not. At this point, I'll just have to wait for the 6.11 package to appear in the main repo to find out.

If anybody has different information, please post here -- loudly :)

ventureo commented on 2024-09-07 12:15 (UTC)

Hi. In CachyOS we have patches to fix the 390.xx driver module build for kernels built with Clang, and it would be nice if you could include them in the AUR package as well, as this may be relevant for other kernels too.

https://github.com/CachyOS/CachyOS-PKGBUILDS/blob/master/nvidia/nvidia-390xx-utils/clang.patch

duht commented on 2024-07-24 08:23 (UTC)

I can confirm: package works like a charm with 6.10-zen. Thanks drankinatty and vnctdj.

vnctdj commented on 2024-07-20 22:28 (UTC) (edited on 2024-07-20 22:28 (UTC) by vnctdj)

I've added kernel 6.10 patch given that canolucas confirmed it works, thanks drankinatty!

But please don't flag the package as out-of-date, it's useless since Nvidia stopped releasing new versions... And I'm subscribed to the mailing list, I always read all of your messages :)

duht commented on 2024-07-20 12:07 (UTC)

@vnctdj thank you for adding fix- now everything works fine.
@drankinatty great job with this 6.10 patch!!

canolucas commented on 2024-07-20 01:45 (UTC) (edited on 2024-07-20 01:48 (UTC) by canolucas)

The patch from @drankinatty is working fine here as well. Linux 6.10 boots just fine. Also run some games to stress test the GPU for a while. Everything looks fine so far. Thanks @drankinatty for the patch !

drankinatty commented on 2024-07-19 10:34 (UTC) (edited on 2024-07-19 20:15 (UTC) by drankinatty)

Updated - original was the 535 patch -- the edit below is the 390xx rewrite

Okay, I have the patch, rewritten from the Herecura 535 patch for 390xx, nvidia-390xx-utils built, 6.10 kernel installed -- and it works like a champ.

The patch

diff -ruNb a/kernel/conftest.sh b/kernel/conftest.sh
--- a/kernel/conftest.sh        2024-07-19 04:36:26.183701185 -0500
+++ b/kernel/conftest.sh        2024-07-19 04:36:26.230366381 -0500
@@ -4464,20 +4464,22 @@
             compile_check_conftest "$CODE" "NV_DRM_GEM_OBJECT_VMAP_HAS_MAP_ARG" "" "types"
         ;;

-        unsafe_follow_pfn)
+        follow_pfn)
             #
-            # Determine if unsafe_follow_pfn() is present.
+            # Determine if follow_pfn() is present.
             #
-            # unsafe_follow_pfn() was added by commit 69bacee7f9ad
-            # ("mm: Add unsafe_follow_pfn") in v5.13-rc1.
+            # follow_pfn() was added by commit 3b6748e2dd69
+            # ("mm: introduce follow_pfn()") in v2.6.31-rc1, and removed
+            # by commit 233eb0bf3b94 ("mm: remove follow_pfn")
+            # from linux-next 233eb0bf3b94.
             #
             CODE="
             #include <linux/mm.h>
-            void conftest_unsafe_follow_pfn(void) {
-                unsafe_follow_pfn();
+            void conftest_follow_pfn(void) {
+                follow_pfn();
             }"

-            compile_check_conftest "$CODE" "NV_UNSAFE_FOLLOW_PFN_PRESENT" "" "functions"
+            compile_check_conftest "$CODE" "NV_FOLLOW_PFN_PRESENT" "" "functions"
         ;;

         drm_plane_atomic_check_has_atomic_state_arg)
diff -ruNb a/kernel/nvidia/nvidia.Kbuild b/kernel/nvidia/nvidia.Kbuild
--- a/kernel/nvidia/nvidia.Kbuild       2022-10-12 04:29:57.000000000 -0500
+++ b/kernel/nvidia/nvidia.Kbuild       2024-07-19 05:17:39.148448922 -0500
@@ -165,7 +165,7 @@
 NV_CONFTEST_FUNCTION_COMPILE_TESTS += ktime_get_real_ts64
 NV_CONFTEST_FUNCTION_COMPILE_TESTS += ioremap_nocache
 NV_CONFTEST_FUNCTION_COMPILE_TESTS += vga_tryget
-NV_CONFTEST_FUNCTION_COMPILE_TESTS += unsafe_follow_pfn
+NV_CONFTEST_FUNCTION_COMPILE_TESTS += follow_pfn
 NV_CONFTEST_FUNCTION_COMPILE_TESTS += acpi_bus_get_device
 NV_CONFTEST_FUNCTION_COMPILE_TESTS += acpi_video_backlight_use_native

diff -ruNb a/kernel/nvidia/os-mlock.c b/kernel/nvidia/os-mlock.c
--- a/kernel/nvidia/os-mlock.c  2022-10-12 04:30:26.000000000 -0500
+++ b/kernel/nvidia/os-mlock.c  2024-07-19 04:36:26.230366381 -0500
@@ -18,10 +18,10 @@
                                 unsigned long address,
                                 unsigned long *pfn)
 {
-#if defined(NV_UNSAFE_FOLLOW_PFN_PRESENT)
-    return unsafe_follow_pfn(vma, address, pfn);
-#else
+#if defined(NV_FOLLOW_PFN_PRESENT)
     return follow_pfn(vma, address, pfn);
+#else
+    return -1;
 #endif
 }

Give it a shot.

drankinatty commented on 2024-07-19 08:53 (UTC) (edited on 2024-07-19 09:40 (UTC) by drankinatty)

I see 6.10 is now out. I've yet to locate a patch (and I've looked, but by search foo is failing me). I haven't attempted the update, but apparently somebody flagged the package as out of date on the 17th, so there must be issues. (my 390xx is in a production server, so it makes it a bit difficult to knock people offline simply to test)

It would have been helpful it the person flagging could have left error messages to give us more to add to our patch search.

If no word and no luck on the search, I'll go ahead and do the update on the server and go from there. I'll post the error messages here when I do. Worse-case scenario, I'll drop to LTS while we work on a patch.

Hah, normal spot has 535 driver patch that may work for 390, e.g. Herecura linux-6.10.patch I haven't tested yet.

We will need to adjust the nvidia.Kbuild patch, e.g.

** kernel-6.10 patch**

patching file kernel/conftest.sh
Hunk #1 succeeded at 4464 with fuzz 1 (offset -717 lines).
patching file kernel/nvidia/nvidia.Kbuild
Hunk #1 FAILED at 161.
1 out of 1 hunk FAILED -- saving rejects to file kernel/nvidia/nvidia.Kbuild.rej
patching file kernel/nvidia/os-mlock.c
Hunk #1 succeeded at 18 (offset -18 lines).