Video-nvidia-470xx fails on kernel 6.0

I don’t know if 470.141.03-3 already incorporates the proposed fix, but I upgraded to that version and I still have the same issue.

EDIT: Apparently 470.141.03-3 should be already patched.

470.141.03-3 has the complete patch applied; it has been released following the opening of the issue #2.
If it not builds maybe you need to re-install the targeted kernel package, to force a complete DKMS rebuild for it, with fresh headers.
Just do this while running on another kernel (you know, don’t cut the branch you sit on …).

I’ve already run sudo mhwd -f -i pci video-nvidia-470xx, which reinstalled the following packages:

egl-wayland-2:1.1.11-2
eglexternalplatform-1.1-2
libxnvctrl-470xx-470.141.03-1
lib32-nvidia-470xx-utils-470.141.03-1
linux515-nvidia-470xx-470.141.03-15
linux519-nvidia-470xx-470.141.03-20
linux60-nvidia-470xx-470.141.03-1
nvidia-470xx-utils-470.141.03-3

and rebooted.

Am I supposed to do anything else?

I don’t see anything related to DKMS in your list.
Have you installed nvidia-470xx-dkms ?
It’s this package that is responsible for rebuilding nvidia modules when your kernel is upgraded.

He has the pre-compiled module installed instead:

The only difference is the pre-compiled module is still using the 5.19 patch which isn’t necessary anymore. I’ve just rebuilt linux60-nvidia-470xxwithout it and pushed 470.141.03-3 to unstable and 470.141.03-2.1 to testing and stable.

1 Like

I installed linux60-headers and nvidia-470xx-dkms. I rebooted to kernel 6, but I have the same error. Also, now the mhwd -f -i pci video-nvidia-470xx command gives:

Warning: no matching device for config 'video-nvidia-470xx' found!
> Removing video-nvidia-470xx...
Sourcing /etc/mhwd-x86_64.conf
Has lib32 support: true
Sourcing /var/lib/mhwd/local/pci/video-nvidia-470xx/MHWDCONFIG
Processing classid: 0300
Sourcing /var/lib/mhwd/scripts/include/0300
Processing classid: 0302
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing nvidia-470xx-utils breaks dependency 'nvidia-470xx-utils=470.141.03' required by nvidia-470xx-dkms
Error: pacman failed!
Error: script failed!

I’ve never had to build the nvidia module for previous kernels anyway. Why should I do that now?

You still don’t. Wait for the 470.141.03-2.1 update to linux60-nvidia-470xx.

The NVIDIA DKMS packages are not included in the MHWD script. If you’ve used MHWD before to install drivers, just install the NVIDIA DKMS package like any other package. If you want to use MHWD again, install the pre-compiled module again.

1 Like

I uninstalled nvidia-470xx-dkms and updated linux60-nvidia-470xx to 470.141.03-2.1. Same error.
I switched to the unstable branch and updated the system (470.141.03-3 is installed). Same error.
linux519-nvidia-470xx 470.141.03-21 on kernel 5.19 works fine.

Well, stick with 5.19 for now, then. Sometimes there are issues with new kernels that are resolved within the first few point releases.

I’m a little confused with this thread. The error explains the issue why the driver is not working on 6.0. Simply based on License issues with kernel modules. If you look at the patch what gets disabled it is clear: kernel-6.0.patch · master · Packages / Extra / linux60-extramodules / nvidia-470xx · GitLab So we have to wait for Nvidia to adjust their driver to match the changes due to GPL exports.

2 Likes

I also use Optimus Manger. I found out that basically there is no need for me to go into Nvidia mode when I can use Hybrid Mode. It works just fine on kernel 6.0.

Optimus Manager has to load the nvidia module anyway in order to make Hybrid Mode work, but in my case that fails. What driver are you using?

Oh, shoot… Didn’t realized this is about nvidia 470. I’m on the newest version on testing branch, so I should have not spoke up here… :frowning:

Just updated linux60-nvidia-470xx to 470.141.03-6. Same error.

Can you, please, share with us the contents of the make.log file (it’s in a subfolder in the /var/lib/dkms/nvidia/470.141.03 folder).
That would be the most interesting bit of information - it would allow us to see what happens during build.

@SoftExpert I use the pre-compiled module included in Manjaro.

Here’s a couple of related threads from the Nvidia forum. Apparently someone managed to make it work by applying a few more patches.

In the meantime version 470.141.10 is out.

@BunchOfAtoms : thank you for keeping us up to date - not always simple to have the latest information available.
My system is quite old (about 10 years) but it does not have an iGPU (or it is switched off in hardware); I have managed to have it working with the whole 6.0.x series of kernels and once I identified the required switches to enable in the xorg.conf file, I don’t even have an issue with the backlight (likely to become an issue again with the upcoming 6.1.x series of kernel).
Once the patch discussed here 470xx drivers and linux 6.0 kernel was included in the AUR package, DKMS was able to build the nvidia module every time I updated the kernel.
Obviously, the issue lies with a set of switches you would need to set in order to have the correct module loaded when booting. There is also a matter of having the appropriate kernel headers installed when you want to build the nvidia module through dkms.
I would say also that, in my experience, the pre-compiled modules might not always match your specific configuration - they are more of a convenience.
Exchanging lots of outputs here allows us all to better understand how your specific context reacts to the approaches we try - in the end we will finally determine which is the best set of parameters for your system and the overall knowledge about configuring this cheeky nvidia driver will increase.

1 Like

I uninstalled the Manjaro pre-compiled module and compiled the driver from the AUR package including these patches (0009, 0020, 0021, 0022, 0023), but I still have the same error. I guess I’ll wait for a new driver.

@BunchOfAtoms does the nvidia module gets built, at least ? it’s easy to check, just look into /var/lib/dkms/nvidia - do you see a directory bearing the name of your kernel version ?
On my machine I have something like:

|-470.141.03
   |---5.19.17-1-MANJARO
   |-----x86_64
   |-------log
   |-------module
   |---6.0.5-x64v2-xanmod1
   |-----x86_64
   |-------log
   |-------module
   |---6.0.6-2-MANJARO
   |-----x86_64
   |-------log
   |-------module
   |---6.0.6-x64v1-xanmod1
   |-----x86_64
   |-------log
   |-------module

I also have signaled the dkms driver as out-of-date, probably in the next few days the maintainer will find the time to take a look …

I managed to make it work by removing the “kernel-6.0.patch”, which is applied by the default PKGBUILD of the AUR package, while applying the “Debian patches” (0009, 0020, 0021, 0022, 0023). Now the problem is that Manjaro wants me to update the AUR package from 470.141.03-2 to a 470.141.03-3 version from the “Official Repositories (extra)”. This is probably an easy issue to solve, but I am not an expert when it comes to package management. Should I add the package to some ignore list?