NVIDIA driver broken after update to 6.6.12

My system installed a bunch of updates today and now the NVIDIA driver is broken - system can’t boot into graphical mode, I get a black screen and blinking cursor.

Booting into single user mode, I see the following error in dmesg:

nvidia_modeset: version magic '6.6.10-1-MANJARO SMP preempt mod_unload ' should be '6.6.12-1-MANJARO SMP preempt mod_unload '

My kernel version - post-update - is indeed 6.6.12, and there was an nvidia driver update installed today.

I tried running pamac upgrade and pacman -Suuy and neither found any updates.

If you have 6.6.12-1 installed, you’re either using the testing or unstable branch. Your profile says you’re using stable.

Either way, you may be in an unsupported, partial upgrade state if your mirrors are not up to date. Please see Pacman-mirrors - Manjaro

Please provide your system details as outline here: [HowTo] Request support

dmesg

inxi

X11 log

I don’t recall switching to the testing branch… How do I check / change?

I’ve configured mirrors by geoip and my mirror is Berkeley, anything wrong with it?

Ran both pacman-mirrors --fasttrack 5 and pacman-mirrors --geoip with pacman -Suy after each one. There are no updates.

My current package list:

Please see Switching Branches - Manjaro

That should be fine; however you may need to refresh your mirrors as I mentioned.

Something’s not right in your Xorg log:

[   394.257] (II) LoadModule: "glxserver_nvidia"
[   394.257] (WW) Warning, couldn't open module glxserver_nvidia
[   394.257] (EE) NVIDIA: Failed to load module "glxserver_nvidia" (module does not exist, 0)
[   394.257] (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
[   394.257] (EE) NVIDIA(0):     log file that the GLX module has been loaded in your X
[   394.257] (EE) NVIDIA(0):     server, and that the module is the NVIDIA GLX module.  If
[   394.257] (EE) NVIDIA(0):     you continue to encounter problems, Please try
[   394.257] (EE) NVIDIA(0):     reinstalling the NVIDIA driver.
[   394.257] (II) NVIDIA: The X server does not support PRIME Render Offload.
[   394.708] (WW) NVIDIA: No DRM device: Direct render devices found but none could be
[   394.708] (WW) NVIDIA:     used.
  • A pre-requisite for PRIME synchronization with the NVIDIA driver is to enable modesetting.

PRIME - ArchWiki

Please also post the output of:

mhwd --list-installed

Re: you may need to refresh your mirrors

I did pacman -Suuyy - shouldn’t that have been enough?

Re: PRIME

I think it’s a red herring - the root issue is the NVIDIA kernel module is failing to load because of version mismatch.

Re: mhwd --list-installed

--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
           video-linux            2018.05.04                true            PCI
          video-nvidia            2023.03.23               false            PCI

No, that’s not what that command does. I already linked the relevant Pacman Mirrors wiki. As repeated ad nauseum, never use -yy. Normally you wouldn’t use -uu unless instructed. Using -Syu should always be enough.

You have a hybrid Intel + NVIDIA laptop, you should have the video-hybrid-intel-nvidia-prime MHWD profile installed. See Configure Graphics Cards - Manjaro

What’s the output of:

sudo mhwd -a pci nonfree 0300

Please check if your system has the marching extramodules for the kernel.

I did check the wiki but don’t see it documenting what exactly to do to refresh the mirror list. It talks at length about configuring the mirror list (which I did) but not about refreshing.

What’s the exact command please?

I do not.

It’s a desktop system with an Intel cpu which has built in graphics that I am not using, and a discrete nvidia graphics card.

Unlike on a laptop, there are distinct graphics output connectors and my display is connected to the discrete nvidia… And it’s been like that for more than 6 months working just fine until today.

How exactly do I do that?

I think there is a mismatch - based on the dmesg error.

Oh sorry, it is a desktop. Apparently my brain is out of order today. :facepalm:

I already saw you have the matching driver and already told Phil, but I guess he replied here when I wasn’t looking. :laughing:

By the way, pastebin is blocked in the country he’s in currently, so he couldn’t see any of the details.

P.S. If no one else has replied yet, please edit your previous reply instead of posting multiple times in a row. I’ve merged them together.

Skipping already installed config 'video-nvidia' for device: 0000:01:00.0 (0300:10de:2704) Display controller nVidia Corporation

There is a /lib/modules/extramodules-6.6-MANJARO/ with the following content:

-rw-r--r-- 1 root root 4.4M Jan  5 09:57 nvidia-drm.ko
-rw-r--r-- 1 root root 772K Jan 15 12:17 nvidia-drm.ko.xz
-rw-r--r-- 1 root root  96M Jan  5 09:57 nvidia.ko
-rw-r--r-- 1 root root  44M Jan 15 12:17 nvidia.ko.xz
-rw-r--r-- 1 root root 3.4M Jan  5 09:57 nvidia-modeset.ko
-rw-r--r-- 1 root root 754K Jan 15 12:17 nvidia-modeset.ko.xz
-rw-r--r-- 1 root root  82K Jan 15 12:17 nvidia-peermem.ko.xz
-rw-r--r-- 1 root root  55M Jan  5 09:57 nvidia-uvm.ko
-rw-r--r-- 1 root root 8.2M Jan 15 12:17 nvidia-uvm.ko.xz
-rw-r--r-- 1 root root   17 Jan 15 10:40 version

The version file contains:

6.6.12-1-MANJARO

However, strings nvidia-drm.ko | grep 6.6 finds a bunch of matches for /usr/lib/modules/6.6.10-1-MANJARO/build


So it seems we’ve now confirmed that the nvidia modules I have installed are compiled against the wrong kernel version - question is, is that a due to incomplete updates of my system (and how do I fix this) or is this a bug in the repositories?

Let’s get back to the branch subject–you have packages matching the testing / unstable branches however you said you didn’t think you switched.

What branch are you using currently?

pacman-mirrors --get-branch

Ah turns out I’m using testing - must have switched at some time and then forgot.


I just did pamac remove linux66-nvidia and then pamac install linux66-nvidia - this changed nothing, the nvidia .ko files still have 6.6.10 in them and nvidia-drm still fails to load.

The version file inside extamodules-6.6-MANJARO still says 6.6.12-1-MANJARO.

Think it’s looking like the nvidia package in the repository is broken?

Did someone checked the matching extramodules?

mkinitcpio had an issue, which got fixed lately. Those who extract modules had done it on the host and not within the initramfs. So be sure to update to the latest, remove any .ko files, remove the nvidia driver package and reinstall latest mkinitcpio and latest drivers. Recheck the folder if there are no .ko files generated.

can you then try

sudo mhwd -a pci free 0300
sudo mhwd -a pci nonfree 0300

then reboot

Yes, I’m aware of it

I ended up installing kernel 6.7 with mhwd-kernel and that fixed everything.

My system is able to boot to graphical again.

Thank you everyone for the help!

This topic was automatically closed 36 hours after the last reply. New replies are no longer allowed.