Tuxedo OS (Ubuntu-based) with KDE/Wayland - waking from Sleep freezes the computer. Help?
Hi all!
I recently installed Tuxedo OS with KDE and Wayland. I'm fairly new to Linux and, so far, the distro is great. With one caveat.
As far as power options go, everything works fine EXCEPT for Sleep. I can put the PC to sleep, but when I wake it up, I land on the login screen wallpaper with the login/password fields barely visible, as if frozen around the second frame of a fade-in animation.
Nothing works. The mouse cursor doesn't move, the keyboard doesn't do anything. The only way out of this state is to hold the power button until the PC shuts down and then turn it back on again.
I did some digging, but couldn't find a solution. Some threads mentioned modifying something in systemd, but those were from years ago, so I didn't want to risk that.
One fairly recent thread had a proposed solution of adding "mem_sleep_default=deep" to GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub.
That didn't work for me, though.
I'd love to fix this, but I'm out of ideas. Any help welcome!
EDIT
Forgot it might be a driver issue, people were complaining about Nvidia gear!
I currently don't have a dedicated GPU. I only have Ryzen 7 7800X3D running on MSI B650 Gaming Plus WIFI ATX AM5 MoBo.
Not really related to the issue.
If I understand correctly, your device isn't bricked, but freezes. A bricked device doesn't boot anymore, a frozen device is unresponsive. Or am I misunderstanding this?
Came here to say the same thing. Using the term "bricking" in the title had me very confused. It would be catastrophic if this was actually bricking computers.
hard bricked. This is when a software change (eg, installing a custom firmware) caused the system to fail to boot, and there is no possible way to ever get it to run again.
soft bricked. Where a software change caused the failure to boot but there is a way (eg, reflashing using UART) to recover back to an older version that does boot.
Both are terms from the Phone modding community (ie, a phone has become as useful as a brick after this update) it's quite hard to actually brick a modern PC.
Fair enough, most of that isn't something a user should have to worry about.
VT is just Virtual Terminals. You always have one of them active, and in most distros you can switch to others by Ctrl-Alt-F1 through F12. In some distos it's just Alt-F1.
So if you press Ctrl-Alt-F2 you should be brought to a text login. For crazy historical reasons you may have to either press Ctrl-Alt-F1 or Ctrl-Alt-F7 to get back to your usual graphical session.
kernel logs are read with the dmesg command. use the --follow parameter if you want it to keep printing new messages.
dmesg does not save logs to disk.
broader system logs are read with journalctl. use -f for it to keep printing. the journal records kernel messages, but it only shows them when you specifically request it. you can find the param for that in man journalctl.
the journalctl (journald actually) saves logs to disk. but if you don't/can't shut down the system properly, the last few messages will not be there.
some system programs log to files in /var/log/, but that's not relevant for now.
if you switch to a VT as the other user described, you should see a terminal prompt on aback background. log in and run dmesg --follow > some_file, some_file should not be something important that already exists in the current directory. switch to another VT, log in, and run sleep. try to wake up. see if you could have waken up, and if not check the logs you piped to the file, maybe post it here for others to see.
also, what did you do after setting the deep sleep kernel param? did you rebuild the grub config, and reboot before trying to sleep with it? that change only gets applied if you do those in that order.
there's an easier way to test different sleep modes temporarily, let me know if it would be useful
First, update your computer's BIOS/firmware. If that doesn't fix it, then try Arch, or Fedora beta. If the problem exists there too, then it's a kernel issue in general, and it might get fixed in the future. OR, if the computer BIOS is buggy, Linus has been clear that they won't do workarounds for buggy firmwares. In which case, you'd need a new computer that's actually compatible with Linux.
Most of the computers out there have buggy firmwares that go around for Windows, but Linus has been adamant that he wouldn't do workarounds because they bloat the kernel.
You are not alone. There are many laptops that don't work with sleep on Linux. I used to have one of them, a Dell 3150. I simply disabled sleep in bios, and be done with it. I now buy laptops that I know they work 100% with Linux. It's impossible for Linux to support every hardware in the world, when these are specifically are made for Windows.
I'm curious, did you dig around the BIOS/UEFI to see if there are any ACPI power states that can be disabled?
I had a very similar issue and turning off S3 worked around it. Of course, that meant higher power usage during sleep but it was a compromise over buying new hardware.
Could you try going to System Settings → Screen Locking and de-select "Lock after waking from sleep"? I wonder if you'll get the same result as I'm getting.
Before I updated the BIOS to the latest version, once I woke it up, I'd see the desktop exactly frozen as it was the moment I pressed the "Sleep" button.
Now, after the update, that freeze happens BEFORE the PC goes to sleep - the monitors stay on.
This is not a solution at all and just what I usually resort to, I always disable sleep on every OS and computer I use. I've always had strange issues after waking up from sleep that persist until reboot and I can't even remember what they are now because it's been so long since I've used it.
I'm not seeing any swap space, so that could be it. Check this post out.
It could also be that your BIOS settings for suspend/resume aren't set to something compatible with your existing config as well though, if the above doesn't work, or you're not comfortable with that level of interaction, check your BIOS first, then try the above maybe.
windows may have a workaround for your hardware. It's relatively common for popular hardware to not work according to specifications, unfortunately, and that results in all kinds of mundane behaviour like this