[RESPONDED] Arch hibernation woes on AMD 13

I have none of the rd.luks/resume bits in my cmdline, since recent versions of systemd can handle that (see using /etc/crypttab.initramfs for prepping the luks device, and systemd-hibernate-resume(8) — Arch manual pages for systemd automatically setting resume location)

I note you don’t have resume_offset in there, does that mean you’re using a swap partition? I’m using a swapfile

Some of this sounds like [SOLVED] Using Linux QEMU/KVM causes s2idle hard freeze on Arch - Linux 6.10.8 which is a systemd/kernel bug.

Doesn’t look like it’s the same thing, I tried the systemd dropins mentioned in that thread and still get a black screen when resuming from sleep.

Now, the fact that that thread reckons they fixed the issue in 6.11-rc7 makes me wonder if that fix is the source of the regression we’re seeing

Yes, I am using a swap partition (encrypted with the keys in a TPM)

Some more attempts to narrow things down:

Tried my nixos config on my old 11th-gen Intel Zenbook (barring the Framework/AMD specific bits). That resumed with no issues.

Tried udev based HOOKS=, resume didn’t work

Just tested 6.11.2 and I see the same behaviour. Using 6.10.12 for now.

1 Like

This is also what I was experiencing and downgrading to 6.10 worked for me as well

Anyone have any idea how to debug this? Or which kernel mailing list to post this to? I’ve built many kernels in my lifetime so I’m more than happy to help debug.

6.11.3 had some interesting patch notes, so I gave it a try. With both the arch version in core-testing, and the cachyos-znver4 version from cachyos, I get exactly 1 successful resume. After that, black screen every time, including after a fresh hibernate.
I’ve also had that same behaviour once by stopping fprintd.service before hibernating, but again, I’m completely unable to reproduce this.
FWIW ubuntu 24.10 (kernel 6.11.0) also freezes on resume from hibernate for me. I’ve never had that working though, so can’t rule out the possibility that I just set it up wrong

I did two test hibernates

# echo test_resume > /sys/power/disk
# echo disk > /sys/power/state

in a row and it seems to work on arch 6.11.3, going to try a real one now.

Edit: Did an actual systemctl hibernate on 6.11.3 and it did not come back up. I’ll just revert back rather than test it some more.