You are not logged in.
I've recently started having issues with suspend on my XPS 15 9570, which uses a GTX 1050ti. I'm using the official NVIDIA drivers due to some minor issues with nouveau in the past. I am pretty new to Arch, so I am a little bit lost.
The issue started the exact same as this topic: [SOLVED] Suspend/Hibernate not working correctly
I had some success using
systemctl suspend
after enabling the NVIDIA services listed in the linked topic, but it still seemed to be occasionally buggy, and "systemctl sleep", "systemctl suspend-then-hibernate" were still returning the same error. These couple of lines from journald seemed to be the issue here (same as linked topic):
Oct 16 22:53:53 dell-xps kernel: NVRM: GPU 0000:01:00.0: PreserveVideoMemoryAllocations module parameter is set. System Power Management attempted without driver procfs suspend interface. Please refer to the 'Configuring Power Management Support' section in the driver README.
Oct 16 22:53:53 dell-xps kernel: nvidia 0000:01:00.0: PM: pci_pm_suspend(): nv_pmops_suspend [nvidia] returns -5
Oct 16 22:53:53 dell-xps kernel: nvidia 0000:01:00.0: PM: dpm_run_callback(): pci_pm_suspend returns -5
Oct 16 22:53:53 dell-xps kernel: nvidia 0000:01:00.0: PM: failed to suspend async: error -5
Oct 16 22:53:53 dell-xps kernel: PM: Some devices failed to suspend, or early wake event detected
I had already set
NVreg_PreserveVideoMemoryAllocations=0
in /etc/modprobe.d and it was still showing the same message. I checked my module parameter value (using head because the rest is aliases) with
modprobe -c | grep nvidia | head -n 4
and it returned:
options nvidia_drm modeset=1
options nvidia NVreg_PreserveVideoMemoryAllocations=0
options nvidia NVreg_PreserveVideoMemoryAllocations=1
options nvidia NVreg_TemporaryFilePath=/var/tmp
This seems to show that something was overriding my config. I have temporarily fixed this by setting the kernel parameter in my GRUB config command line default in /etc/default/grub. I do not like this solution (because what is the point of modprobe.d if it is just getting overriden?), and I want to understand where the override is coming from, because I can't find any information on it besides basic info on how the priorities work. If anyone could help me understand this, that would be greatly appreciated.
Last edited by jesch (2024-10-17 16:20:26)
Offline
Offline
Thank you! Exactly what I needed.
Offline