Machine does not wake from suspend/hibernation

Hi there and thank you for this post!

I am new here and I only recently installed EndeavourOS. I have tried to follow your post to get my system to suspend and resume. Unfortunately, it doesn’t work: my system never wakes up (close/open lid, pressing keys or pressing the power button, etc.). How should I proceed to understand what is wrong?

Here some information about my system: https://0x0.st/oFpz.txt

what does this show:
lsinitrd | grep resume

You have selected “swap with hibernation” on install process?

Here :

lsinitrd /boot/initramfs-linux.img |grep resume
resume
-rwxr-xr-x   1 root     root        14280 Feb 24  2022 usr/lib/systemd/systemd-hibernate-resume
-rwxr-xr-x   1 root     root        14512 Feb 24  2022 usr/lib/systemd/system-generators/systemd-hibernate-resume-generator
-rw-r--r--   1 root     root          680 Feb 24  2022 usr/lib/systemd/system/systemd-hibernate-resume@.service

I guess it’s relevant to show also :

cat /etc/dracut.conf.d/nvidia.conf
force_drivers+=" nvidia nvidia_modeset nvidia_uvm nvidia_drm "

and

cat /etc/dracut.conf.d/resume.conf
add_dracutmodules+=" resume "

and

grep swap /etc/fstab
/dev/mapper/luks-0b2e5609-b174-45aa-875c-727ae046ea13   swap         swap    defaults            0 0

and

grep resume /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT='nowatchdog nvme_load=YES rd.luks.uuid=a9001606-80a3-47d8-bc48-e2a79a3a95be rd.luks.uuid=0b2e5609-b174-45aa-875c-727ae046ea13 resume=/dev/mapper/luks-0b2e5609-b174-45aa-875c-727ae046ea13 loglevel=3 rd.driver.blacklist=nouveau nvidia-drm.modeset=1'

Does this help?

(By the way, am I wrong thinking that some of the information found at https://discovery.endeavouros.com/nvidia/nvidia-optional-enhancements-and-troubleshooting/2021/03/ for example, might be misleading after the introduction of dracut?)

That all looks fine to me. This may not be a dracut issue but a standard my machine doesn’t wake up from hibernate type issue.

The fix for this often involves setting kernel params and/or changing BIOS settings. I am not an expert on those though.

As for

I think yes, but I don’t remember any more. I configured a little stuff for swap manually too.

Can you be more specific?

Is there anything I can configure what action exactly wakes up a suspended system? Like open the display lid or press keys?

You probably should create a separate topic for this issue and post your inxi -Fxxxz

EDIT: Actually, let me split it so we won’t lose anything.

1 Like

The encryption of the swap partition and then adjusting the corresponding lines for GRUB and fstab. I think. :slight_smile:

At a glance, it looks right to me.

Even if it was wrong, I would think it would give you an error on boot, not refuse to wake at all. That sounds like you are going into the wrong power state or something similar.

I suspect that would be hardware dependent. Have you looked in the BIOS?

Wouldn’t it be precise to title this thread “…does not resume from suspend”? Suspend != hibernate, right?

It is if that is what is your issue is. All the stuff with swap, dracut and the resume line has to do with hiberation(suspend to disk).

If your issue has only to do with normal suspend, none of those changes should matter.

Feel free to edit the title to be more accurate to your issue.

Thanks for the clarification, then. Well, both suspend and hibernation do not work as expected. I’ll try to test the command line a few times first.

It may not be relevant, since you have no problems booting, but it seems a double entry for luks in kernel params:

rd.luks.uuid=a9001606-80a3-47d8-bc48-e2a79a3a95be
rd.luks.uuid=0b2e5609-b174-45aa-875c-727ae046ea13
resume=/dev/mapper/luks-0b2e5609-b174-45aa-875c-727ae046ea13

For sleep related issues, I would suggest you check this article for a suitable solution to yours, if you don’t need hibernation.
Is hibernation working?
AFAIK resume-related stuff is for hibernation.
Or you might explain in more detail what you try to fix? :person_shrugging:

Isn’t that normal for dracut? You provide the luks entries for both root and swap if both are encrypted.

1 Like

That’s what I thought too. @petsam You got my double entries from… ? As far as I understand from reading relevant documents, resume= is an extra addition, required in the case of encryption.

resume= is used to resume from hibernation. You probably had to modify it to point to the /dev/mapper address.

The extra rd.luks.uuid= that points to your swap partition is what you had to add for encryption.

That being said, if your issue also impacts suspend, I don’t think any of that matters.

1 Like

Sorry for I forgot to mention, suspend was working in the beginning. After various configurations to make Wayland + Sway to work with Nvidia’s proprietary driver, this is where it stopped working. I didn’t note when exactly it happened though.

Well…that seems pretty relevant. :sweat_smile:

Do you remember what you did specifically?

1 Like