Sleep/Wake Issue on Bazzite

Specs:

Intel i7 8700k

Asus Z370A motherboard

Nvidia Rtx 3070

On Bazzite, waking from sleep fails 90% of the time resulting in fans on but screen black and computer completely unresponsive. Requires a system reset. I’ve tried updating, browsing forums, and chatgpt. But still unresolved.

I had the exact same issue (or so it seems). I have a RTX 4090 / Ryzen 5600X / LG CX as a screen.
First of all, you should be able to still recover without rebooting. When your screen is black after wakeing up, try CTRL+ALT+F3 to switch to a text console (wait a bit, it can take 3-4 seconds for your screen to catch up). If it works, you should see a text login prompt. Then, CTRL+ALT+F2 to switch back to the graphical console where you should recover your usual lock screen. This is only a workaround though, I admit.

About the actual issue now. For me, I had this error in journalctl at wakeup:
[drm:nv_drm_atomic_commit [nvidia_drm]] ERROR [nvidia-drm] … Flip event timeout on head 0
Process 10196 (plasmashell) … dumped core.

Try to let a terminal run with “journalctl -f” (if the above method works for you), or consult the log of your previous session after reboot (ujust get-logs). If you have this same issue, an IA indeed gave me a fix for this specific error. Here is what it told to me, in italic, below (anyone knowing better is welcome to correct this if this seems wrong/subpar, but it worked in my case).

The NVIDIA driver is timing out while trying to restore the display state. Because it takes too long or fails to restore the video memory context, the Wayland compositor (KWin) and the Desktop (Plasmashell) crash.
The Fix:
You need to force the NVIDIA driver to preserve video memory allocations in system RAM during sleep. This is standard procedure for the RTX 4090 on Linux but might not be enabled by default on your specific image configuration.

  • Open a terminal (PTY/Konsole).
  • Enable the necessary systemd services: Bazzite usually has these, but we must ensure they are active to handle the memory save/load.
sudo systemctl enable nvidia-suspend.service nvidia-resume.service nvidia-hibernate.service
  • Add the Kernel Argument: We need to tell the kernel module to use the preservation features.
rpm-ostree kargs \
--append-if-missing=nvidia.NVreg_PreserveVideoMemoryAllocations=1 \
--append-if-missing=nvidia.NVreg_TemporaryFilePath=/var/tmp

Note: We add TemporaryFilePath=/var/tmp because the default temporary folder can sometimes be too small or cleared during sleep, which would cause the save to fail.

Now, my Bazzite is waking up with no issues like 95% of the time. I never took the time to investigate the issue for the 5% when it does not work, for now (I use the CTRL+ALT work around).

Hope this helps!

Thx for the reply. Unfortunately, this solution did not work for me and neither did the ctr + alt + F3 trick. Same issue with fans on but no screen output or any kind of response. The only solution remains to be a hardware reset(Hold down Power button). Below I have included the logs of the computer suspending, then trying to wake it up, before I reset it. I made a daemon that runs when you suspend the computer as part of a solution I tried and it is visible in the logs I beleive. Also, what does IA stand for?

Feb 13 23:31:03 bazzite systemd[1]: Starting nvidia-suspend.service - NVIDIA system suspend actions...
Feb 13 23:31:03 bazzite systemd[1]: Starting suspend-fix.service - Fix suspend/resume for Intel Ethernet, USB, and NVIDIA GPU...
Feb 13 23:31:03 bazzite suspend[8034]: nvidia-suspend.service
Feb 13 23:31:03 bazzite logger[8034]: <13>Feb 13 23:31:03 suspend: nvidia-suspend.service
Feb 13 23:31:03 bazzite kernel: e1000e 0000:00:1f.6 enp0s31f6: removed PHC
Feb 13 23:31:03 bazzite kernel: rfkill: input handler enabled
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/ldac
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSink/aptx_hd
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/aptx_hd
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSink/aptx
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/aptx
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSink/aac
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/aac
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSink/opus_g
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/opus_g
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSink/sbc
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/sbc
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/aptx_ll_1
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/aptx_ll_0
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/aptx_ll_duplex_1
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/aptx_ll_duplex_0
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/faststream
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/faststream_duplex
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSink/opus_05
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/opus_05
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSink/opus_05_duplex
Feb 13 23:31:03 bazzite bluetoothd[1301]: Endpoint unregistered: sender=:1.140 path=/MediaEndpoint/A2DPSource/opus_05_duplex
Feb 13 23:31:03 bazzite gsd-media-keys[4084]: Unable to get default sink
Feb 13 23:31:03 bazzite gsd-media-keys[4084]: Unable to get default source
Feb 13 23:31:03 bazzite kernel: e1000e 0000:00:1f.6 enp0s31f6: NIC Link is Down
Feb 13 23:31:03 bazzite NetworkManager[1569]: <info>  [1771043463.4211] device (enp0s31f6): state change: unavailable -> unmanaged (reason 'unmanaged-link-not-init', managed-type: 'removed')
Feb 13 23:31:03 bazzite ModemManager[1456]: <msg> [base-manager] port enp0s31f6 released by device '/sys/devices/pci0000:00/0000:00:1f.6'
Feb 13 23:31:03 bazzite systemd-logind[1406]: Watching system buttons on /dev/input/event3 (Razer Razer Huntsman Elite)
Feb 13 23:31:03 bazzite systemd-logind[1406]: Watching system buttons on /dev/input/event4 (Razer Razer Huntsman Elite)
Feb 13 23:31:03 bazzite systemd-logind[1406]: Watching system buttons on /dev/input/event6 (Razer Razer Mamba Wireless Receiver)
Feb 13 23:31:03 bazzite kernel: xhci_hcd 0000:00:14.0: remove, state 4
Feb 13 23:31:03 bazzite kernel: usb usb2: USB disconnect, device number 1
Feb 13 23:31:03 bazzite kernel: xhci_hcd 0000:00:14.0: USB bus 2 deregistered
Feb 13 23:31:03 bazzite kernel: xhci_hcd 0000:00:14.0: remove, state 1
Feb 13 23:31:03 bazzite systemd-logind[1406]: Watching system buttons on /dev/input/event5 (Razer Razer Mamba Wireless Receiver)
Feb 13 23:31:03 bazzite kernel: usb usb1: USB disconnect, device number 1
Feb 13 23:31:03 bazzite kernel: usb 1-3: USB disconnect, device number 2
Feb 13 23:31:03 bazzite dbus-broker[1294]: A security policy denied :1.8 to send method call /midi/profile:org.bluez.GattProfile1.Release to :1.141.
Feb 13 23:31:03 bazzite bluetoothd[1301]: Battery Provider Manager destroyed
Feb 13 23:31:03 bazzite systemd[1]: Starting systemd-rfkill.service - Load/Save RF Kill Switch Status...
Feb 13 23:31:03 bazzite kernel: usb 1-4: USB disconnect, device number 3
Feb 13 23:31:03 bazzite kernel: usb 1-5: USB disconnect, device number 4
Feb 13 23:31:03 bazzite systemd[3608]: Stopped target bluetooth.target - Bluetooth.
Feb 13 23:31:03 bazzite systemd[1]: Stopped target bluetooth.target - Bluetooth Support.
Feb 13 23:31:03 bazzite kernel: usbhid 1-5:1.0: Razer Device disconnected
Feb 13 23:31:03 bazzite kernel: usbhid 1-5:1.1: Razer Device disconnected
Feb 13 23:31:03 bazzite kernel: usbhid 1-5:1.2: Razer Device disconnected
Feb 13 23:31:03 bazzite kernel: xhci_hcd 0000:00:14.0: USB bus 1 deregistered
Feb 13 23:31:03 bazzite kernel: xhci_hcd 0000:04:00.0: remove, state 4
Feb 13 23:31:03 bazzite kernel: usb usb4: USB disconnect, device number 1
Feb 13 23:31:03 bazzite kernel: xhci_hcd 0000:04:00.0: USB bus 4 deregistered
Feb 13 23:31:03 bazzite kernel: xhci_hcd 0000:04:00.0: remove, state 1
Feb 13 23:31:03 bazzite kernel: usb usb3: USB disconnect, device number 1
Feb 13 23:31:03 bazzite kernel: usb 3-2: USB disconnect, device number 2
Feb 13 23:31:03 bazzite kernel: usb 3-2.1: USB disconnect, device number 3
Feb 13 23:31:03 bazzite kernel: usb 3-2.3: USB disconnect, device number 4
Feb 13 23:31:03 bazzite uresourced[1979]: Setting resources on user-1000.slice (MemoryMin: 0, MemoryLow: 0, CPUWeight: 100, IOWeight: 100)
Feb 13 23:31:03 bazzite uresourced[1979]: Setting resources on user@1000.service (MemoryMin: 0, MemoryLow: 0, CPUWeight: 100, IOWeight: 100)
Feb 13 23:31:03 bazzite uresourced[1979]: Setting resources on user.slice (MemoryMin: 0, MemoryLow: 0, CPUWeight: -, IOWeight: -)
Feb 13 23:31:03 bazzite kernel: usbhid 3-2.3:1.0: Razer Device disconnected
Feb 13 23:31:03 bazzite kernel: usbhid 3-2.3:1.1: Razer Device disconnected
Feb 13 23:31:03 bazzite kernel: usbhid 3-2.3:1.2: Razer Device disconnected
Feb 13 23:31:03 bazzite kernel: xhci_hcd 0000:04:00.0: USB bus 3 deregistered
Feb 13 23:31:03 bazzite systemd[1]: Finished suspend-fix.service - Fix suspend/resume for Intel Ethernet, USB, and NVIDIA GPU.
Feb 13 23:31:03 bazzite audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=suspend-fix comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:03 bazzite systemd[1]: Reached target sleep.target - Sleep.
Feb 13 23:31:05 bazzite systemd[1]: nvidia-suspend.service: Deactivated successfully.
Feb 13 23:31:05 bazzite systemd[1]: Finished nvidia-suspend.service - NVIDIA system suspend actions.
Feb 13 23:31:05 bazzite audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=nvidia-suspend comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:05 bazzite audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=nvidia-suspend comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:05 bazzite systemd[1]: nvidia-suspend.service: Consumed 1.249s CPU time, 662.7M memory peak.
Feb 13 23:31:05 bazzite systemd[1]: Starting systemd-suspend.service - System Suspend...
Feb 13 23:31:05 bazzite systemd[1]: Started systemd-rfkill.service - Load/Save RF Kill Switch Status.
Feb 13 23:31:05 bazzite audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-rfkill comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:05 bazzite systemd[1]: session-2.scope: Unit now frozen-by-parent.
Feb 13 23:31:10 bazzite systemd[1]: systemd-rfkill.service: Deactivated successfully.
Feb 13 23:31:10 bazzite audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-rfkill comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:12 bazzite systemd[1]: NetworkManager-dispatcher.service: Deactivated successfully.
Feb 13 23:31:12 bazzite audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=NetworkManager-dispatcher comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:17 bazzite systemd[1]: virtvboxd.service: Deactivated successfully.
Feb 13 23:31:17 bazzite audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=virtvboxd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:17 bazzite systemd[1]: virtqemud.service: Deactivated successfully.
Feb 13 23:31:17 bazzite audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=virtqemud comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:17 bazzite systemd[1]: virtlxcd.service: Deactivated successfully.
Feb 13 23:31:17 bazzite audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=virtlxcd comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:32 bazzite systemd[1]: systemd-hostnamed.service: Deactivated successfully.
Feb 13 23:31:32 bazzite audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-hostnamed comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Feb 13 23:31:32 bazzite audit: BPF prog-id=97 op=UNLOAD
Feb 13 23:32:05 bazzite systemd-sleep[8134]: Failed to freeze unit 'user.slice': Connection timed out
Feb 13 23:32:05 bazzite systemd-sleep[8149]: [Error] > An error occurred: [Errno 2] No such file or directory
Feb 13 23:32:05 bazzite (sd-exec-strv)[8146]: /usr/lib/systemd/system-sleep/fw-fanctrl-suspend failed with exit status 1.
Feb 13 23:32:05 bazzite systemd-sleep[8134]: Performing sleep operation 'suspend'...

Oops, sorry for the mixup: “IA” is in fact “AI”. I am French, where “Artificial Intelligence” is the other way around: “Intelligence Artificielle”, hence the IA…

You indeed seem to have a different issue than mine, unfortunately.
I usually get more useful answers, for Bazzite issues, using Gemini 3 Pro than GPT 5.2 Thinking. Not a Google fan, that is just my experience.

Here is what it says about your log, worth a try, maybe.

The most critical error in the log is: Feb 13 23:32:05 bazzite systemd-sleep[8134]: Failed to freeze unit 'user.slice': Connection timed out

This happened exactly 60 seconds after the sleep process started. The system tried to freeze all open applications (Steam, Discord, Browser, etc.) but something refused to stop. When the timeout hits, the kernel forces sleep anyway, which often crashes the NVIDIA driver, resulting in a black screen on wake.

1. Close heavy apps before sleep: As a test, have the user close Steam, Discord, and any web browsers completely before clicking “Sleep”. If it wakes up fine, one of those apps is the culprit (often hardware acceleration in browsers or Steam downloads).
2. Check for “Zombie” processes: Before sleeping, run this command to see if any process is stuck in a “Uninterruptible” (D) state:

ps -eo state,pid,cmd | grep "^D"

If anything shows up there, that process is likely holding the lock.

I had a similar issue when waking from sleep. I personally don’t use the actual sleep function but I like my system to stay on while my monitors turn off after X amount of time idle and wake upon input from mouse/keyboard. I searched the web and also found no real answer, the only thing close were a few threads saying “its probably an issue with nvidia drivers not playing nice”. My “fix” was to turn sleep and hibernate off within settings and set my monitors to turn off after 15 minutes of inactivity. Ultimately I believe this issue is the nvidia drivers getting stuck(excuse my lack of info, I’m still very new to a lot of linux related things)

Probably this:

After the DYI fix in the second issue thread that’s linked in the first it worked for a short moment, then broke worse to where it would hard lock the system like you describe, and now it’s back to immediately waking up again.

Your bios should have a few “wake on …” settings, one of them being USB or M/KB input.