Ми}{@лbI4

Helloworlder's blog

Arch Linux + Nvidia + Suspend / Hibernation

2023-07-30 arch, linux, nvidia, suspend, hibernation

Since 6th version of Linux kernel, maybe earlier, users has problem with proprietary Nvidia video drivers when system go into suspend or hibernation mode. As a rule, users see booted system with black screen. There have a suspicion that the video card is not started after out from suspend or hibernation mode.

In the installation manual of Nvidia of Arch Linux Wiki the problem doesn't touch. Maybe the problem possible solve to configure Early loading of video card modules. I didn't try that option, because at first I found another working solution at openSUSE forum, where someone gave a hint about deactivated experimental video driver services. I think these services has been added as experimental and deactivated to solve the similar problems of some users only.

UPD: "Early loading" do not solve the problem.

I have enabled three services, which I need: nvidia-suspend, nvidia-hibernate и nvidia-resume. If you install the video drivers from Arch Linux repository, then these services has already in your system and you just can enable them:

sudo systemctl enable nvidia-suspend
sudo systemctl enable nvidia-hibernate
sudo systemctl enable nvidia-resume

After this everything works as it should. And everything has worked fine without any problems up to July 2, 2024, before the next upgrade.

After the upgrade and coming out of hibernation, I observed an error related to Nvidia and an inability to boot into the system without rebooting. The error looked like this: "BUG: scheduling while atomic: irq/148-nvidia...". For a long time, I searched for an answer and suddenly read that Nvidia driver version 535 does not have these problems. Therefore, I decided to downgrade the packages: nvidia to 550.90.07-4, nvidia-settings to 550.78-1, nvidia-utils to 550.90.07-3 and linux to 6.9.6. I didn't downgrade too far away to version 535; instead, I rolled back to the versions of the packages from the day when I made the unfortunate upgrade of the system. I want to note that the Linux kernel also needs to be downgraded to a version that is supported by the Nvidia driver. Unfortunatelly, Nvidia drivers doesn't work with a recent linux kernel.

You can read about how to downgrade a package in the official documentation for Arch Linux - https://wiki.archlinux.org/title/downgrading_packages

In one month, no fixes have been made to the Nvidia drivers. The package linux is already at version 6.10.2, and I had the chance to be without stable functionality in my system due to the old packages. Moreover, some packages may have dependencies on the new version of the linux package in the future, which may give me more problem with stability. Therefore, I have decided to buy and set up a video card that will have Amd GPU. And no more pain in my life. I was supposed to do this earlier, but for old time's sake I favored Nvidia. On top of video card of Amd I received a great opportunity switch from i3 to Hyprland, what has been thought more not once, but cannot did that because of problems with Nvidia video card.

For the others, who read this article, I advise you replace video card to Amd or don't use proprietary video drivers. You still will have ability to work without it. I used to use them for more stability render of image on my display and for work in Lightworks. If for you it is not important, you may rid of them bravely.