uwsm tears down the entire Hyprland session after sleep/resume - NVIDIA only
### Description
Hyprland session becomes unusable after suspend/resume when launched via uwsm. Upon resume the system enters a black screen
1. the Hyprland session crashed
2. the greeter doesn't come back a live
3. the NVIDIA Frame buffer crashed displaying no TTY1 despite it accepting inputs
Works fine when launched directly e.g. launching Hyprland directly (without uwsm) through the same greetd setup, suspend/resume works perfectly.
### System info
- CachyOS (Arch-based), kernel 6.18.9-3-cachyos
- Nvidia RTX 4070 Ti Super, driver 590.48.01 (open)
- Hyprland (Hyprland 0.53.3 built from branch v0.53.3 at commit dd220efe7b1e292415bd0ea7161f63df9c95bfd3 clean (version: bump to 0.53.3)), uwsm (0.26.2-1)
- greetd + tuigreet as display manager
- $SYSTEMD_SLEEP_FREEZE_USER_SESSIONS=0
- nvidia-suspend/resume services enabled, NVreg_PreserveVideoMemoryAllocations=1
### Steps to reproduce
1. Launch Hyprland via uwsm start hyprland.desktop through greetd
2. Suspend with systemctl suspend
3. Resume
4. Session is frozen/black, compositor unresponsive
I have tested it on my laptop without an NVIDIA GPU - works without issues. By request I can share the specs of that too.
### Related logs
output of `journalctl -b -1 --user -u 'wayland-wm@*' -u 'wayland-session*' --no-pager`
```
Feb 21 16:30:44 quantum-desktop systemd[1201]: Starting Bind graphical session to PID 1225...
Feb 21 16:30:44 quantum-desktop systemd[1201]: Started Bind graphical session to PID 1225.
Feb 21 16:30:44 quantum-desktop systemd[1201]: Reached target Session envelope of hyprland.desktop Wayland compositor.
Feb 21 16:30:44 quantum-desktop systemd[1201]: Reached target Preparation for session of hyprland.desktop Wayland compositor.
Feb 21 16:30:44 quantum-desktop systemd[1201]: Starting Wait for WAYLAND_DISPLAY and other variables...
Feb 21 16:30:44 quantum-desktop systemd[1201]: Starting Main service for Hyprland, An intelligent dynamic tiling Wayland compositor...
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1288]: Starting: /usr/bin/start-hyprland...
Feb 21 16:30:44 quantum-desktop uwsm_waitenv[1287]: Expecting variables to appear in activation environment:
Feb 21 16:30:44 quantum-desktop uwsm_waitenv[1287]: WAYLAND_DISPLAY, HYPRLAND_INSTANCE_SIGNATURE
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1294]: Expecting variables to appear in activation environment:
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1294]: WAYLAND_DISPLAY, HYPRLAND_INSTANCE_SIGNATURE
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: Welcome to Hyprland!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Instance Signature: dd220efe7b1e292415bd0ea7161f63df9c95bfd3_1771687844_1896638695
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Runtime directory: /run/user/1000/hypr/dd220efe7b1e292415bd0ea7161f63df9c95bfd3_1771687844_1896638695
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Hyprland PID: 1297
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: ===== SYSTEM INFO: =====
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: System name: Linux
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Node name: quantum-desktop
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Release: 6.18.9-3-cachyos
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Version: #1 SMP PREEMPT_DYNAMIC Thu, 12 Feb 2026 07:34:00 +0000
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]:
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: GPU information:
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: 01:00.0 VGA compatible controller [0300]: NVIDIA Corporation AD103 [GeForce RTX 4070 Ti SUPER] [10de:2705] (rev a1) (prog-if 00 [VGA controller])
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: WARN ]: Warning: you're using an NVIDIA GPU. Make sure you follow the instructions on the wiki if anything is amiss.
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: os-release:
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: NAME="CachyOS Linux"
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: PRETTY_NAME="CachyOS"
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: ID=cachyos
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: ID_LIKE=arch
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: BUILD_ID=rolling
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: ANSI_COLOR="38;2;23;147;209"
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: HOME_URL="https://cachyos.org/"
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DOCUMENTATION_URL="https://wiki.cachyos.org/"
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: SUPPORT_URL="https://discuss.cachyos.org/"
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: BUG_REPORT_URL="https://github.com/cachyos"
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: LOGO=cachyos
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: ========================
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]:
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: If you are crashing, or encounter any bugs, please consult https://wiki.hypr.land/Crashes-and-Bugs/
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]:
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: Current splash: "please make this message a splash" - eriedaberrie
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Old rlimit: soft -> 1024, hard -> 1048576
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: New rlimit: soft -> 1048576, hard -> 1048576
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the EventLoopManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the HookSystem!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the KeybindManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the AnimationManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the DynamicPermissionManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the ConfigManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Using config: /home/quantum/.config/hypr/hyprland.conf
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: !!!!HEY YOU, YES YOU!!!!: further logs to stdout / logfile are disabled by default. BEFORE SENDING THIS LOG, ENABLE THEM. Use debug:disable_logs = false to do so: https://wiki.hypr.land/Configuring/Variables/#debug
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the CHyprError!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the LayoutManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the TokenManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: [hookSystem] New hook event registered: preConfigReload
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Using config: /home/quantum/.config/hypr/hyprland.conf
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Disabling stdout logs! Check the log for further logs.
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the PointerManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the EventManager!
Feb 21 16:30:44 quantum-desktop uwsm_hyprland.desktop[1297]: DEBUG ]: Creating the AsyncResourceGatherer!
Feb 21 16:30:45 quantum-desktop systemd[1201]: Started Main service for Hyprland, An intelligent dynamic tiling Wayland compositor.
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1288]: DEBUG from start-hyprland ]: got an event from hyprland
Feb 21 16:30:45 quantum-desktop foot[1329]: wayland: compositor does not implement the XDG toplevel icon protocol
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1452]: The XKEYBOARD keymap compiler (xkbcomp) reports:
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1452]: > Warning: Unsupported maximum keycode 708, clipping.
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1452]: > X11 cannot support keycodes above 255.
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1452]: > Warning: Virtual modifier Hyper multiply defined
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1452]: > Using 0, ignoring 0
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1452]: > Warning: Virtual modifier ScrollLock multiply defined
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1452]: > Using 0, ignoring 0
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1452]: Errors from xkbcomp are not fatal to the X server
Feb 21 16:30:45 quantum-desktop uwsm_waitenv[1287]: All expected variables appeared in activation environment.
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: All expected variables appeared in activation environment.
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: Exporting variables to systemd user manager:
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: DISPLAY (already set)
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: HYPRLAND_INSTANCE_SIGNATURE (already set)
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: QT_QPA_PLATFORMTHEME (already set)
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: WAYLAND_DISPLAY (already set)
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: Marking variables for later cleanup from systemd user manager on stop:
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: HYPRLAND_INSTANCE_SIGNATURE
Feb 21 16:30:45 quantum-desktop uwsm_hyprland.desktop[1294]: Autoready failed: org.freedesktop.systemd1.NoSuchUnit: Unit wayland-wm@None.service not loaded.
Feb 21 16:30:45 quantum-desktop systemd[1201]: Finished Wait for WAYLAND_DISPLAY and other variables.
Feb 21 16:30:45 quantum-desktop systemd[1201]: Reached target Session of hyprland.desktop Wayland compositor.
Feb 21 16:30:45 quantum-desktop systemd[1201]: Reached target XDG Autostart for session of hyprland.desktop Wayland compositor.
Feb 21 16:30:49 quantum-desktop keepassxc[2522]: QApplication: invalid style override 'kvantum' passed, ignoring it.
Available styles: qt5ct-style, Windows, Fusion
Feb 21 16:30:50 quantum-desktop keepassxc[2522]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Feb 21 16:30:50 quantum-desktop keepassxc[2522]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Feb 21 16:30:50 quantum-desktop keepassxc[2522]: qt.qpa.wayland: Wayland does not support QWindow::requestActivate()
Feb 21 16:31:14 quantum-desktop uwsm_hyprland.desktop[4396]: The XKEYBOARD keymap compiler (xkbcomp) reports:
Feb 21 16:31:14 quantum-desktop uwsm_hyprland.desktop[4396]: > Warning: Unsupported maximum keycode 708, clipping.
Feb 21 16:31:14 quantum-desktop uwsm_hyprland.desktop[4396]: > X11 cannot support keycodes above 255.
Feb 21 16:31:14 quantum-desktop uwsm_hyprland.desktop[4396]: > Warning: Virtual modifier Hyper multiply defined
Feb 21 16:31:14 quantum-desktop uwsm_hyprland.desktop[4396]: > Using 0, ignoring 0
Feb 21 16:31:14 quantum-desktop uwsm_hyprland.desktop[4396]: > Warning: Virtual modifier ScrollLock multiply defined
Feb 21 16:31:14 quantum-desktop uwsm_hyprland.desktop[4396]: > Using 0, ignoring 0
Feb 21 16:31:14 quantum-desktop uwsm_hyprland.desktop[4396]: Errors from xkbcomp are not fatal to the X server
Feb 21 16:31:22 quantum-desktop systemd[1201]: Stopped target XDG Autostart for session of hyprland.desktop Wayland compositor.
Feb 21 16:31:22 quantum-desktop systemd[1201]: Stopped target Session of hyprland.desktop Wayland compositor.
Feb 21 16:31:22 quantum-desktop systemd[1201]: Stopping Main service for Hyprland, An intelligent dynamic tiling Wayland compositor...
Feb 21 16:31:22 quantum-desktop uwsm_hyprland.desktop[1362]: (EE) failed to read Wayland events: Broken pipe
Feb 21 16:31:22 quantum-desktop keepassxc[2522]: The Wayland connection broke. Did the Wayland compositor die?
Feb 21 16:31:22 quantum-desktop systemd[1201]: Stopped Main service for Hyprland, An intelligent dynamic tiling Wayland compositor.
Feb 21 16:31:22 quantum-desktop systemd[1201]: wayland-wm@hyprland.desktop.service: Consumed 40.175s CPU time over 33.125s wall clock time, 4G memory peak.
Feb 21 16:31:22 quantum-desktop systemd[1201]: wayland-wm@hyprland.desktop.service: Triggering OnSuccess= dependencies.
Feb 21 16:31:22 quantum-desktop systemd[1201]: Stopped target Preparation for session of hyprland.desktop Wayland compositor.
Feb 21 16:31:22 quantum-desktop systemd[1201]: Stopping Bind graphical session to PID 1225...
Feb 21 16:31:22 quantum-desktop systemd[1201]: Stopped Bind graphical session to PID 1225.
Feb 21 16:31:22 quantum-desktop systemd[1201]: wayland-session-bindpid@1225.service: Triggering OnSuccess= dependencies.
Feb 21 16:31:23 quantum-desktop systemd[1201]: Stopped target Session envelope of hyprland.desktop Wayland compositor.
Feb 21 16:31:23 quantum-desktop systemd[1201]: Reached target Shutdown graphical session units.
Feb 21 16:31:23 quantum-desktop systemd[1201]: Stopped target Shutdown graphical session units.
```
Output of `journalctl -b -1 --since "16:30:56" --until "16:31:23" -u systemd-sleep -u nvidia-suspend -u nvidia-resume -u systemd-suspend`
```
Feb 21 16:30:56 quantum-desktop systemd[1]: Starting NVIDIA system suspend actions...
Feb 21 16:30:56 quantum-desktop suspend[3929]: nvidia-suspend.service
Feb 21 16:30:56 quantum-desktop logger[3929]: <13>Feb 21 16:30:56 suspend: nvidia-suspend.service
Feb 21 16:30:57 quantum-desktop systemd[1]: nvidia-suspend.service: Deactivated successfully.
Feb 21 16:30:57 quantum-desktop systemd[1]: Finished NVIDIA system suspend actions.
Feb 21 16:30:57 quantum-desktop systemd[1]: nvidia-suspend.service: Consumed 1.107s CPU time over 1.419s wall clock time, 954.6M memory >
Feb 21 16:30:57 quantum-desktop systemd[1]: Starting System Suspend...
Feb 21 16:30:57 quantum-desktop systemd-sleep[3995]: User sessions remain unfrozen on explicit request ($SYSTEMD_SLEEP_FREEZE_USER_SESSI>
Feb 21 16:30:57 quantum-desktop systemd-sleep[3995]: This is not recommended, and might result in unexpected behavior, particularly
Feb 21 16:30:57 quantum-desktop systemd-sleep[3995]: in suspend-then-hibernate operations or setups with encrypted home directories.
Feb 21 16:30:57 quantum-desktop systemd-sleep[3995]: Performing sleep operation 'suspend'...
Feb 21 16:31:08 quantum-desktop systemd-sleep[3995]: System returned from sleep operation 'suspend'.
Feb 21 16:31:09 quantum-desktop systemd[1]: systemd-suspend.service: Deactivated successfully.
Feb 21 16:31:09 quantum-desktop systemd[1]: Finished System Suspend.
Feb 21 16:31:09 quantum-desktop systemd[1]: systemd-suspend.service: Consumed 1.658s CPU time over 6.176s wall clock time, 3.6M memory p>
Feb 21 16:31:09 quantum-desktop systemd[1]: Starting NVIDIA system resume actions...
Feb 21 16:31:09 quantum-desktop suspend[4227]: nvidia-resume.service
Feb 21 16:31:09 quantum-desktop logger[4227]: <13>Feb 21 16:31:09 suspend: nvidia-resume.service
Feb 21 16:31:09 quantum-desktop systemd[1]: nvidia-resume.service: Deactivated successfully.
Feb 21 16:31:09 quantum-desktop systemd[1]: Finished NVIDIA system resume actions.
```
5 条评论