Arch Linux NVIDIA Driver Beta - Module has invalid ELF Structures
Updating Kernel to 5.15.2
So I run Arch linux and updated my kernel last night. When I restarted my computer this morning I was welcomed by the following error message.
[FAILED] Failed to start Light Display Manager. Module has invalid ELF structures Module has invalid ELF structures Module has invalid ELF structures Module has invalid ELF structures Module has invalid ELF structures
I was able to start a terminal session using a very old (and extremely handy) Linux trick.
Linux Concurrent Sessions (ctrl + alt + F1-F7)
On Linux based operating systems you can combine
[F1]-[F7] to open concurrent text based sessions.
It’s really nice because you can open multiple sessions even if there is a GUI desktop running.
I suggest jumping around on these at any time on a Linux desktop.
These can be useful to use even when your shit isn’t broken.
|Screen (ctl + alt +)||Command||Description|
||I use the 1st session to just watch the system logs as I debug in other sessions|
||I use the 2nd session as my main working session. Here is where I do all my commands|
I use lightdm for my desktop manager (I just think it’s pretty - literally the only reason I use it). I tried to check the lightdm systemd service to see what was going on.
journalctl -fu lightdm
I found logs in
lightdm.log lightdm.log.old seat0-greeter.log seat0-greeter.log.old x-0.log x-0.log.old
I looked in the
lightdm.log file and found the error I was looking for.
[+0.29s] DEBUG: Process 679 exited with return value 1 [+0.29s] DEBUG: XServer 0: X server stopped [+0.29s] DEBUG: Releasing VT 7 [+0.29s] DEBUG: XServer 0: Removing X server authority /run/lightdm/root/:0 [+0.29s] DEBUG: Seat seat0: Display server stopped [+0.29s] DEBUG: Seat seat0: Stopping session [+0.29s] DEBUG: Seat seat0: Session stopped [+0.29s] DEBUG: Seat seat0: Stopping display server, no sessions require it [+0.29s] DEBUG: Seat seat0: Stopping; greeter display server failed to start [+0.29s] DEBUG: Seat seat0: Stopping [+0.29s] DEBUG: Seat seat0: Stopped [+0.29s] DEBUG: Required seat has stopped [+0.29s] DEBUG: Stopping display manager [+0.29s] DEBUG: Display manager stopped [+0.29s] DEBUG: Stopping daemon [+0.29s] DEBUG: Exiting with return value 1
The line that connects a failing
Xorg is this one.
[+0.29s] DEBUG: XServer 0: X server stopped
I just knew that
X Server corresponded to
I also knew that good old
starx should be able to tell me more.
As expected the
starx command did not work.
I then checked the
Xorg logs directly and found the source of the problem.
cat /var/log/Xorg.0.log ... [ 18.704] (II) LoadModule: "nouveau" [ 18.707] (WW) Warning, couldn't open module nouveau [ 18.707] (EE) Failed to load module "nv" (module does not exist, 0)
I have an NVIDIA graphics card (an old one…)
lspci -v | grep -i nvidia 03:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1) (prog-if 00 [VGA controller])
I checked the
nvidia package just to see if I missed an update.
pacaur -S nvidia
I discovered I was running the
nvidia-beta package. I replaced with the
nvidia regular package.
pacaur -Ss nvidia-beta aur/nvidia-beta 495.44-1 (348, 2.403939) [installed] NVIDIA drivers for Arch's official 'linux' package (beta version) pacaur -S nvidia
Restarted the computer
sudo reboot now
and we were off to the races as they say.
All in all this blog took more time to write, than the computer took to fix. Whatever – here is a blog. Hopefully it helps someone.