I updated my graphics drivers from nvidia 470 to nvidia 560 due to issues running certain games. It’s fixed my gaming issue but reintroduced the problem that kept me from updating for so long.
After setting my computer to “suspend,” it wakes up to this screen on all monitors. I am unable to scroll up or type further commands, my only option is to reboot the machine.
- My graphics card is: NVIDIA Corporation GP104 [GeForce GTX 1070]
- Nvidia driver version: 560.35.03
- My desktop environment is Cinnamon X11. (This does not occur on Wayland, but there is no Cinnamon Wayland.)
I can’t make heads or tails of this error screen. The best I can understand is the “Fixing recursive fault but reboot is required!” line. How can I get more information? Does anyone have any ideas on how I can fix this? Thanks in advance.
Edit: It seems important to mention this is happening only on X11 (Pop default and Cinnamon), and not on Pop!_OS on Wayland.
Have the same gpu and had same issue give me a second to find the solution again.
Now back at PC:
Right so i searched for a while back when i got those issues and the only solution that really worked for me was installing 550 instead. Idk how PopOS / ubuntu does things. So doing this could be easy or super fucking annoying.
depending on the repo you are using for the nvidia driver, you might be able to specify the driver version during install like so:
sudo apt install nvidia-driver-550
I am on debian12 and installing from repo didnt work for me as there were lots of dependencies that had version conflicts. I ended up installing it with the .run file which is really tedious.
Oh man, so Pop!_OS has a “pop shop” where it officially supports 470 and 560. 550 isn’t on there so, while I could try it, I wouldn’t expect it to work.
In “Software and Updates” I have options for the “NVIDIA driver metapackages” for 390, 470, and 560. 560 is currently selected. I also have the NVIDIA server driver metapackage for 535, so I could try that. It would be newer than 470 but not as current as 560.
But since the chances this would fix it are already low (and 560 drivers fixed my other issues), I’m hesitant to try unless I exhaust every other option.
hmm okay i dont really know anything about pop_os, but yeah it seems that it doesnt like it if you install stuff outside of its pre selected set of packages. my next GPU will definitely be an AMD one, nvidia is just a mess.
well good luck then i guess 🫤
550 for the gtx 1070
Finally got around to this. I tried installing while logged in, then realized I should Ctrl+Alt+F2 (or something) and stop gdm before installing.
I got an error message, there was an error while building kernel modules. Checking /var/log/nvidia-installer.log I think this is the culprit:
warning: the compiler differs from the one used to build the kernel The kernel was built by: x86_64-linux-gnu-gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0 You are using: cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Warning: Compiler version check failed:
The major and minor number of the compiler used to compile the kernel:
x86_64-linux-gnu-gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0, GNU ld (GNU Binutils for Ubuntu) 2.38
does not match the compiler used here:
cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 Copyright © 2021 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. It is recommended to set the CC environment variable to the compiler that was used to compile the kernel.
To skip the test and silence this warning message, set the IGNORE_CC_MISMATCH environment variable to “1”. However, mixing compiler versions between the kernel and kernel modules can result in subtle bugs that are difficult to diagnose.
So I’m using 11.4.0 instead of 12.3.0? Not sure what that number is. Both kernels are based on Ubuntu 22.04. I’m starting to think if I really want cinnamon I should use a distro that was made for cinnamon, like Mint.
Found this :
https://askubuntu.com/a/1503216
GCC is the compiler. The code snippet in the link above sets the environment for the driver to use the compiler you have.
This is getting deep and complicated.
So I tried using the command in the snippet, and made sure that CC was capitalized, but the error log still says “You are using: cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0”
Going to the post that talks about changing your version of GCC it looks like my gcc might be pointing to the “11.4.0 cc”?
But when I run: sudo apt-get install gcc-4.3 gcc-4.4 g+±4.3 g+±4.4
I can’t find those packages. And when I run:
sudo update-alternatives --remove-all gcc sudo update-alternatives --remove-all g++
I find no alternatives. Sheesh. When I go this many layers deep I get worried that I’m going to potentially break something that will make bugtesting for other future things harder.
So after installing it I see:
nvidia-driver-550 is already the newest version (560.35.03-1pop0~1729800494~22.04~4a3cad6)
So 550 is there, but it’s using 560. I assume that means I need to purge all traces of 560 and 550 and then reinstall 550, unless I can specify somewhere to use 550.
However in software and updates there is no 550, only 560.
Have you tried 535 yet? I would do that before trying to experiment with other installation pathways.
Alright, I think I may have found my solution.
- The crash only occurs on desktop environments that use x11, it does not occur on DEs that use Wayland.
- The only DE that uses Wayland that Pop officially supports (that I can tell at least) is “Pop (on Wayland),” which is GNOME.
- GNOME doesn’t look or feel familiar to me, Cinnamon does. I really like Cinnamon. But today I realized GNOME extensions can be used to make GNOME feel different, and are (at least so far) remarkably stable.
- By installing the extension manager, and then adding the extensions “Dash to Panel” and “ArcMenu” and tweaking them I’ve been able to achieve the look and feel that I was going for with Cinnamon, on a DE that doesn’t crash on suspend. (Note for anyone else that tries this: I had to disable the “Cosmic Dock” and “Pop COSMIC” extensions so things would play nice with the new extensions.)
So it’s a workaround. It’s essentially finding a way to make the “new” stuff feel like the old stuff, but as an added benefit, I get all the functionality that the new stuff offers.
If you don’t find a fix, just try switching to the other display protocol. It might help.
Do you mean switching from x11 to wayland?
Yes but usually it’s the other way around.
No, Pop defaults to X
At least for me, 560 works better with wayland than x11. xorg has problems with suspending/hibernating (IDK why), but wayland just works.
Ok, so switching to Pop on Wayland works. I didn’t mention this in my original post, but I’ve been running Pop on Cinnamon. So I either need to get comfortable with Pop’s DE or figure out if this is a cinnamon issue.
Previously I had an issue with fullscreen games having weird lag issues on Wayland. Though… testing that out now, that seems to no longer be an issue.
After trying this for a few minutes, I really don’t like how slow the dock shows itself when I hover near the bottom of the screen, and i don’t like how the application bar adds visual noise to the top of the screen. To me, it makes more sense for the two bars to be united as one like in cinnamon. :/
Out of curiosity, I wonder if the crash occurs when I’m in Pop x11, or if this is a cinnamon-specific bug.
EDIT: The crash occurs on Pop’s default DE on X11, and cinnamon on X11, but not Pop on Wayland.
I never used cinnamon, but on what you’re saying, it might be that the version (popos ships) cinnamon is at doesn’t support nvidia on wayland, without bugs. I might be saying crap.
But on gnome (what i think is pop default DE) wayland works fine on 560, so yeah, very difficult situation.
Fwiw I find wayland works better than x11 on pop
Nvidia drivers? Good luck friend
Cinnamon on mint has an option to log in using Wayland.
Where you type your login/password (mint uses light-dm as the login window) there is a small icon/avatar to the right. Clicking that gives the DE options:
- Cinnamon
- Cinnamon 2D
- Cinnamon Wayland (experimental)
Since pop is Ubuntu based you could try the Ubuntu ppa (there are other nvidia tips here, too)
https://itsfoss.com/ubuntu-official-ppa-graphics/
And, here’s the 550 download directly from nvidia
Hey thank you! I’ll give this a shot tomorrow. I think my install uses GDM, not light-dm? I have Cinnamon but not Cinnamon Wayland in my list.
But I’ll try the 550 drivers for sure!
does system76 not provide support for things like this?
Not unless you buy their hardware
it hadn’t occurred to me that someone would use their distro w/o the hardware.
i bought from a system76 rival w their own distro too so that i can avoid situations like this and lemmy is teaching me how lazy and out of touch it’s made me; op’s smart to use a distro from a linux company that maintains its own distro with it’s own paid developers because there’s a stronger chance that there’s an answer in their forum, compared to some obscure distro maintained by volunteers with day jobs.
I wish I could get a System76 PC. They’re a bit pricey and I like the spec and build my own. Their cases are really nice, so one day I may just buy the case. I use POP OS on my builds and it is really nice. I’m excited to see the Cosmic DE get a full releas
there are cheaper alternatives; tuxedo and kfocus immediately come to mind.
We usually find solutions or workarounds to Nvidia driver issues within a day or two in the Arch community. The absolute worst case handling I’ve had to do was fork the Nvidia dkms package at the prior version (think
nvidia-dkms-550
) and run that until Nvidia themselves released a fixed version. Still pretty straightforward.The most helpful advice I can give to anyone running a distro maintained by folks with day jobs is “take system snapshots before updates” - do that and the worst case fix to any update problem like this is still really easy to handle, even if you’re 10 minutes out from a work call and an update just went wrong.
I never appreciated snapshots until I ran a server. I used to just install a new distro whenever anything significant went wrong. Now I use them everywhere.
I wrote simple hooks for my package manager to fire system snapshots before I install or update any package. It’s a nice safety belt that I’ve never actually needed to use, but if I do need it it’s there.