Suspend/Hibernate resume crush

Hello!
Desktop PC. AMD video card (not new one but workable). 32 Gb Swap file. 24 GB RAM. 4-Core Intel CPU.
Fresh install of EndeavourOS Mercury.

KDE Plasma desktop
Error when resuming from Suspend or Hibernate under Wayland session both on 6.16.1 and 6.12.42 LTS kernels.
The screen is distorted with horizontal lines or stripes. And that’s all.
What is wrong?

You should read this post so you can submit your logs and system configuration:

https://discovery.endeavouros.com/forum-log-tool-options/how-to-include-systemlogs-in-your-post/2021/03/

This is well know Plasma 6/Wayland bug on Arch and derivatives. Still not resolved. Shame. I found I had no mkinitcpio file. Maybe drakut took its place. Drakut or no drakut, I installed mkinitcpio and added ‘resume‘ to a hook. Everything seems to be working now. But still it is shame not to have a working hibernate on EOS. Bad. Wayland + KDE is still a dangerous pair. Still too many bugs.

mine works flawless with nvidia, I use booster instead mkinitcpio or dracut

I never heard of booster. And why shall I? What shall I do to use it?

I’m going to add my 2 cents here. There is no room in the EndeavourOS forums for this kind of behavior. We expect polite discussion where we help one another. Stereotypes and agitating people with acronyms are not welcome. If someone asks you to clarify what you meant, please do. Being evasive is causing ill will. Many people here expect a degree of decorum.

@dalto

Can you review this thread to see if any rules were broken? I want to nip this one now before it gets out of hand in other threads. Thank you.

Actually I do have suspend then hibernate working with Dracut and Gnome (Wayland).

Can you manually hibernate with ‘systemctl hibernate.?

@ricklinux Do you have hibernation working on your KDE setup?

I read about Booster a while back, but don’t use it:

Maybe a little off-topic, because I use X11 and Cinnamon (and dracut) with EOS, but I feel it a little unfair to generalize here. EOS (and Arch) in general do have a well-working suspend, suspend-then-hibernate, hybrid-sleep and hibernate.

Basically, it’s a UEFI/BIOS and kernel thing, and sometimes devices or their drivers interfere, or there’s simply no appropriate swap space set up.

Unfortunately, we couldn’t see a picture of your display misbehaving after resume, but from what you say in the first post I would guess that either

  • the driver doesn’t re-read the monitor EDID upon resume and sets correct parameters like frame rate, or
  • not all video memory got saved/restored.

Does the journal show successful freezing/thawing? Depending on the mode used (I use suspend-then-hibernate), you could check what happened since the last boot like so (example from my Thinkpad shown):

$ journalctl -b 0 -u systemd-suspend-then-hibernate.service
Aug 22 02:34:33 t14-mch systemd[1]: Starting System Suspend then Hibernate...
Aug 22 02:34:33 t14-mch systemd-sleep[93494]: Successfully froze unit 'user.slice'.
Aug 22 02:34:33 t14-mch systemd-sleep[93494]: Performing sleep operation 'suspend'...
Aug 22 07:58:28 t14-mch systemd-sleep[93494]: System returned from sleep operation 'suspend-then-hibernate'.
Aug 22 07:58:28 t14-mch systemd-sleep[93494]: Successfully thawed unit 'user.slice'.
Aug 22 07:58:28 t14-mch systemd[1]: systemd-suspend-then-hibernate.service: Deactivated successfully.
Aug 22 07:58:28 t14-mch systemd[1]: Finished System Suspend then Hibernate.

Here, my system went to suspend at 02:34:33 and I opened the laptops’s lid again at 07:58:28. No wakeups/sleeps in between are shown because it knew it was on AC. My other notebook (on battery) periodically awakens every 2–3 hours to check for battery state and whether it should hibernate now. [Nice side effect: It’s awake long enough to report battery state back to my Home Assistant, which can yell at me to charge it if needed.]

If needed, you could investigate what else happened by specifying a time, like so:

$ journalctl -b 0 --since "02:34:33"
Aug 22 02:34:33 t14-mch systemd[1]: Reached target Sleep.
Aug 22 02:34:33 t14-mch systemd[1]: Starting System Suspend then Hibernate...
Aug 22 02:34:33 t14-mch systemd[1]: user@1000.service: Unit now frozen-by-parent.
Aug 22 02:34:33 t14-mch systemd[1]: session-2.scope: Unit now frozen-by-parent.
Aug 22 02:34:33 t14-mch systemd[1]: user.slice: Unit now frozen.
Aug 22 02:34:33 t14-mch systemd[1]: user-1000.slice: Unit now frozen-by-parent.
Aug 22 02:34:33 t14-mch systemd-sleep[93494]: Successfully froze unit 'user.slice'.
Aug 22 02:34:33 t14-mch systemd-sleep[93494]: Performing sleep operation 'suspend'...
Aug 22 02:34:33 t14-mch kernel: PM: suspend entry (deep)
Aug 22 02:34:33 t14-mch kernel: Filesystems sync: 0.005 seconds

This should give some indication of what went wrong.

A typical resume (opening laptop lid) would look like this
$ journalctl -b 0 --since "07:58:28"
Aug 22 07:58:28 t14-mch kernel: Freezing user space processes
Aug 22 07:58:28 t14-mch kernel: Freezing user space processes completed (elapsed 0.002 seconds)
Aug 22 07:58:28 t14-mch kernel: OOM killer disabled.
Aug 22 07:58:28 t14-mch kernel: Freezing remaining freezable tasks
Aug 22 07:58:28 t14-mch kernel: Freezing remaining freezable tasks completed (elapsed 0.001 seconds)
Aug 22 07:58:28 t14-mch kernel: printk: Suspending console(s) (use no_console_suspend to debug)
Aug 22 07:58:28 t14-mch kernel: e1000e: EEE TX LPI TIMER: 00000011
Aug 22 07:58:28 t14-mch kernel: ACPI: EC: interrupt blocked
Aug 22 07:58:28 t14-mch kernel: ACPI: PM: Preparing to enter system sleep state S3
Aug 22 07:58:28 t14-mch kernel: ACPI: EC: event blocked
Aug 22 07:58:28 t14-mch kernel: ACPI: EC: EC stopped
Aug 22 07:58:28 t14-mch kernel: ACPI: PM: Saving platform NVS memory
Aug 22 07:58:28 t14-mch kernel: Disabling non-boot CPUs ...
Aug 22 07:58:28 t14-mch kernel: smpboot: CPU 7 is now offline
Aug 22 07:58:28 t14-mch kernel: smpboot: CPU 6 is now offline
Aug 22 07:58:28 t14-mch kernel: smpboot: CPU 5 is now offline
Aug 22 07:58:28 t14-mch kernel: smpboot: CPU 4 is now offline
Aug 22 07:58:28 t14-mch kernel: smpboot: CPU 3 is now offline
Aug 22 07:58:28 t14-mch kernel: smpboot: CPU 2 is now offline
Aug 22 07:58:28 t14-mch kernel: smpboot: CPU 1 is now offline
Aug 22 07:58:28 t14-mch kernel: ACPI: PM: Low-level resume complete
Aug 22 07:58:28 t14-mch kernel: ACPI: EC: EC started
Aug 22 07:58:28 t14-mch kernel: ACPI: PM: Restoring platform NVS memory
Aug 22 07:58:28 t14-mch kernel: Enabling non-boot CPUs ...
Aug 22 07:58:28 t14-mch kernel: smpboot: Booting Node 0 Processor 1 APIC 0x2
Aug 22 07:58:28 t14-mch kernel: CPU1 is up
Aug 22 07:58:28 t14-mch kernel: smpboot: Booting Node 0 Processor 2 APIC 0x4
Aug 22 07:58:28 t14-mch kernel: CPU2 is up
Aug 22 07:58:28 t14-mch kernel: smpboot: Booting Node 0 Processor 3 APIC 0x6
Aug 22 07:58:28 t14-mch kernel: CPU3 is up
Aug 22 07:58:28 t14-mch kernel: smpboot: Booting Node 0 Processor 4 APIC 0x1
Aug 22 07:58:28 t14-mch kernel: CPU4 is up
Aug 22 07:58:28 t14-mch kernel: smpboot: Booting Node 0 Processor 5 APIC 0x3
Aug 22 07:58:28 t14-mch kernel: CPU5 is up
Aug 22 07:58:28 t14-mch kernel: smpboot: Booting Node 0 Processor 6 APIC 0x5
Aug 22 07:58:28 t14-mch kernel: CPU6 is up
Aug 22 07:58:28 t14-mch kernel: smpboot: Booting Node 0 Processor 7 APIC 0x7
Aug 22 07:58:28 t14-mch kernel: CPU7 is up
Aug 22 07:58:28 t14-mch kernel: ACPI: PM: Waking up from system sleep state S3
Aug 22 07:58:28 t14-mch kernel: ACPI: EC: interrupt unblocked
Aug 22 07:58:28 t14-mch kernel: ACPI: EC: event unblocked
Aug 22 07:58:28 t14-mch kernel: iwlwifi 0000:00:14.3: Rfkill was toggled during suspend
Aug 22 07:58:28 t14-mch kernel: xhci_hcd 0000:2b:00.0: xHC error in resume, USBSTS 0x401, Reinit
Aug 22 07:58:28 t14-mch kernel: usb usb3: root hub lost power or was reset
Aug 22 07:58:28 t14-mch kernel: usb usb4: root hub lost power or was reset
Aug 22 07:58:28 t14-mch kernel: nvme nvme0: 8/0/0 default/read/poll queues
Aug 22 07:58:28 t14-mch kernel: usb 1-8: reset high-speed USB device number 88 using xhci_hcd
Aug 22 07:58:28 t14-mch kernel: usb 1-1: reset full-speed USB device number 2 using xhci_hcd
Aug 22 07:58:28 t14-mch kernel: pci_bus 0000:05: Allocating resources
Aug 22 07:58:28 t14-mch kernel: pci_bus 0000:2b: Allocating resources
Aug 22 07:58:28 t14-mch kernel: mei_hdcp 0000:00:16.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops i915_hdcp_ops [i915])
Aug 22 07:58:28 t14-mch kernel: pci_bus 0000:05: Allocating resources
Aug 22 07:58:28 t14-mch kernel: pci_bus 0000:2b: Allocating resources
Aug 22 07:58:28 t14-mch kernel: OOM killer enabled.
Aug 22 07:58:28 t14-mch kernel: Restarting tasks: Starting
Aug 22 07:58:28 t14-mch kernel: usb 1-9: USB disconnect, device number 90
Aug 22 07:58:28 t14-mch kernel: Restarting tasks: Done
Aug 22 07:58:28 t14-mch kernel: random: crng reseeded on system resumption
Aug 22 07:58:28 t14-mch systemd-logind[769]: Lid opened.
Aug 22 07:58:28 t14-mch systemd-sleep[93494]: System returned from sleep operation 'suspend-then-hibernate'.
Aug 22 07:58:28 t14-mch kernel: PM: suspend exit
Aug 22 07:58:28 t14-mch bluetoothd[763]: Controller resume with wake event 0x0
Aug 22 07:58:28 t14-mch systemd[1]: Starting Daily man-db regeneration...
Aug 22 07:58:28 t14-mch systemd[1]: user@1000.service: Unit now thawed.
Aug 22 07:58:28 t14-mch systemd[1]: session-2.scope: Unit now thawed.
Aug 22 07:58:28 t14-mch systemd[1]: user-1000.slice: Unit now thawed.
Aug 22 07:58:28 t14-mch systemd[1]: user.slice: Unit now thawed.
Aug 22 07:58:28 t14-mch systemd-sleep[93494]: Successfully thawed unit 'user.slice'.
Aug 22 07:58:28 t14-mch systemd[1]: systemd-suspend-then-hibernate.service: Deactivated successfully.
Aug 22 07:58:28 t14-mch systemd[1]: Finished System Suspend then Hibernate.
Aug 22 07:58:28 t14-mch kernel: usb 1-9: new full-speed USB device number 93 using xhci_hcd
Aug 22 07:58:28 t14-mch systemd[1]: Stopped target Sleep.
Aug 22 07:58:28 t14-mch systemd[1]: Reached target Suspend; Hibernate if not used for a period of time.
Aug 22 07:58:28 t14-mch systemd-logind[769]: Operation 'suspend-then-hibernate' finished.
Aug 22 07:58:28 t14-mch systemd[1]: Stopped target Suspend; Hibernate if not used for a period of time.

…

Yes, some of those posts were clearly in violation of the rules.

I have removed those posts as well as the responses to the posts.