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
Hibernate was working fine for me, but it broke recently. I booted with no_console_suspend and recovered the following crash, but I was not able to see it in the journal (only the kernel virtual TTY). So I’m posting an enhanced picture of the screen and OCR for convenience:
To anyone reading this thread, I want to mention something important.
A lot of Linux professionals, by the way, recommend against using hibernation on Linux. It almost always never ends up being a good idea. Just low power suspend is good enough.
If you are using encryption and worried about access to the laptop, the cryptsetup-suspend tool can be installed. No need to set up hibernation, swap partition or swap file, anything like that. Just super simple and easy enough.
The only downside is that, sure, if someone maliciously uninstalls or disables cryptsetup-suspend then it won’t re-encrypt, but the attacker would need root to do that, along with bypassing any default SELinux permissions (if that’s installed).
So save yourself the headache and try that out, Most people on Linux loathe hibernation because it’s basically just a really fancy way of shutting down the laptop. Not worth setting up because of how buggy it usually is.
If no Linux professionals and developers are spending the time to make hibernation work, then why spend ten times the amount of effort as regular Linux users? Doesn’t make much sense to me. And it is sad that very experienced developers are not making the effort to get this to work as well as Windows and Mac handles it, but oh well… what can we do?
There’s a very valid usecase for hibernate though – suspend-then-hibernate is a lot more user friendly. It’s the default on my work macbook.
If I put my laptop away end of day Friday to catch the train, I expect it to have battery for my first meeting Monday morning (and also not overheat in my backpack). Suspend then hibernate after an hour solves this usecase for me – it’ll lose about 1% battery for the hour before it hibernates, vs 25% per day in “low power suspend”.
Some of us are clearly power users and we clearly can help make this feature better by using it and reporting bugs like we’re doing in this thread.
Sorry for the tangent, every time this comes up, people always comment “why hibernate, suspend Works For Me, and should work for you too”.
Hah, glad you’ve fixed it. Missed your post but fixed mine today after somebody pointed me to https://bugzilla.kernel.org/show_bug.cgi?id=219290. I tested hibernate without bluetooth enabled on 6.11.4 and it all worked fine.
I’m now running this systemd service:
[Unit]
Description=Disable Bluetooth before going to sleep
Before=sleep.target
StopWhenUnneeded=yes
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/rfkill block bluetooth
ExecStop=/usr/bin/rfkill unblock bluetooth
[Install]
WantedBy=sleep.target
My Framework laptop is on it’s way to me. (YAY!) On my current laptop I use suspend+hibernate because the suspend isn’t that great and still consumes quite some power. How much does a FW13 AMD typically use in suspend? I might consider going with suspend instead of suspend+hibernate.
It’s around 1% for hour on my 7840U (not sure what other components matter for suspended power draw), so about 3-4 days from full battery on sleep.
Which is why I use suspend-then-hibernate even though it was a pain to setup (I also use kernel lockdown mode, which makes it doubly annoying, but I’m tech savvy enough to fix it, or report bugs here )