Can't wake up from sleep/hibernate on battery

Hi everybody,

I recently installed Manjaro KDE to replace my Kubuntu install and I really like it so far.
I have an issue where my laptop won’t wake up from sleep when the laptop is on battery. If the laptop is on AC power it is fine. I have also seen this behavior with hibernation.

I have been messing with the nvidia drivers since I couldn’t get prime switching to work but gave up and just reinstalled the proprietary prime drivers. Although I think this issue was also there when I first used Manjaro.

When it tries to wake up from sleep it only displays a cursor in the left corner of the screen and does nothing. I also can’t switch to a terminal with CTRL+ALT+F2

I already have tried to see if journalctl doesn’t mention anything but I don’t see anything related with waking up from sleep, although I could have overlooked something since I am not very familiar with journalctl

My Laptop is a Lenovo Thinkpad P51

OS: Manjaro Linux x86_64 
Host: 20HJS14M00 ThinkPad P51 
Kernel: 5.14.10-1-MANJARO 
DE: Plasma 5.22.5 
WM: KWin 
Theme: Layan [Plasma], Layan-dark [GTK2/3] 
Icons: [Plasma], Tela [GTK2/3] 
CPU: Intel i7-7700HQ (8) @ 3.800GHz 
GPU: Intel HD Graphics 630 
GPU: NVIDIA Quadro M1200 Mobile 
Memory: 2363MiB / 15736MiB 

Any help would be kindly appreciated

1 Like

I would be lying if I said that I’m sure whats going on here, but my guess is that when in hibernation on battery the laptop does not power the ram sticks and they lose the data stored on them. I do not know if you have already made a swap file to solve the issue.

My first step would to make a swap file of the size of your ram size + sqrt(ram size). This is 20 gig of space on your hard drive that will get exclusively used for swap if you have 16 gig of ram, but that’s the price of hibernation. This way your computer can store the ram data on the hard disk when sleeping.

Here is a guide on how to make a swap file if it is indeed the issue: How to Add Swap in Manjaro - Matt Jones

While I don’t really care for hibernation as much and haven’t tested that as extensive as sleep. I do know I have a swap file. I made the swap file during the Manjaro installation and it is is 18 gig according to the Disks app. (I have 16 gig of memory).

The reason I know why hibernation also doesn’t work is because I tried to use as an alternative for sleep.

Sounds more complicated than I can help with. I find hibernation quite mystifying since it worked without swap space at all on manjaro for me on my pc.

I do see you run a very cutting edge kernel. I had some issues with 5.13 relating to hibernation and switched to the latest lTS/Recommended kernel. This solved my issue’s but they were different from yours. It might be worth a try if you haven’t already.

Yeah I ran 5.13 first and I thought a kernel update might fix it so I tried that, but it didn’t work.

I have sort of fixed it now. I tried 5.10 and then 5.4. 5.10 didn’t fix my issue but 5.4 seems to fix it.
I find it quite strange since I am not sure exactly which kernel I used on kubuntu, but I didn’t have this issue there.

I did use kubuntu 20.10 and dist-upgraded to 21.04 and those have kernel versions of 5.8 and 5.11. But I never checked if the kernel also updated to 5.11 so it could be that it was still on 5.8, although I am not sure. Atleast I have this workaround.
If the issue comes back on 5.4 in the next few days I’ll post again.

I’ll try some newer kernels in the future maybe the issue will resolve itself through updates.

There must be at least something in the journal regarding suspend.
Could you check again? What exactly is happening when you try to wake it up? And how do you wake it up?

So with this kernel: Linux version 5.14.10-1-MANJARO
using the command: journalctl -b -1 to show the last boot.
The last few messages I get are:

nov 03 17:07:25 Laptop-Ralf avahi-daemon[693]: Joining mDNS multicast group on interface wlp4s0.IPv4 with address 192.168.1.11.
nov 03 17:07:25 Laptop-Ralf avahi-daemon[693]: New relevant interface wlp4s0.IPv4 for mDNS.
nov 03 17:07:25 Laptop-Ralf avahi-daemon[693]: Registering new address record for 192.168.1.11 on wlp4s0.IPv4.
nov 03 17:07:25 Laptop-Ralf avahi-daemon[693]: Withdrawing address record for 192.168.1.11 on wlp4s0.
nov 03 17:07:25 Laptop-Ralf avahi-daemon[693]: Leaving mDNS multicast group on interface wlp4s0.IPv4 with address 192.168.1.11.
nov 03 17:07:25 Laptop-Ralf avahi-daemon[693]: Interface wlp4s0.IPv4 no longer relevant for mDNS.
nov 03 17:07:25 Laptop-Ralf NetworkManager[697]: <info>  [1635955645.8540] device (wlp4s0): supplicant interface state: completed -> disconnected
nov 03 17:07:25 Laptop-Ralf NetworkManager[697]: <info>  [1635955645.8556] device (wlp4s0): state change: disconnected -> unmanaged (reason 'sleeping', sys-iface-state: 'managed')
nov 03 17:07:25 Laptop-Ralf NetworkManager[697]: <info>  [1635955645.8574] device (wlp4s0): set-hw-addr: reset MAC address to AC:ED:5C:57:43:E2 (unmanage)
nov 03 17:07:25 Laptop-Ralf kded5[1258]: plasma-nm: Not emitting connection deactivated notification as we're about to suspend
nov 03 17:07:25 Laptop-Ralf kded5[1258]: plasma-nm: Network connectivity limited, scheduling notification
nov 03 17:07:25 Laptop-Ralf wpa_supplicant[912]: nl80211: deinit ifname=p2p-dev-wlp4s0 disabled_11b_rates=0
nov 03 17:07:25 Laptop-Ralf systemd[1]: Reached target Sleep.
nov 03 17:07:25 Laptop-Ralf systemd[1]: Starting System Suspend...
nov 03 17:07:25 Laptop-Ralf wpa_supplicant[912]: nl80211: deinit ifname=wlp4s0 disabled_11b_rates=0
nov 03 17:07:26 Laptop-Ralf systemd-sleep[1802]: Entering sleep state 'suspend'...

After that there is nothing. This happens if I close the lid and open it again when it has entered sleep. After that if I wake up there only appears a _ and my laptop is completely unresponsive. Even the capslock and numlock lights won’t change. I have to press the power button for a couple of seconds and then reboot.

On the older kernel: Linux version 5.4.150-1-MANJARO

nov 03 17:20:12 Laptop-Ralf avahi-daemon[812]: Joining mDNS multicast group on interface wlp4s0.IPv4 with address 192.168.1.11.
nov 03 17:20:12 Laptop-Ralf avahi-daemon[812]: New relevant interface wlp4s0.IPv4 for mDNS.
nov 03 17:20:12 Laptop-Ralf avahi-daemon[812]: Registering new address record for 192.168.1.11 on wlp4s0.IPv4.
nov 03 17:20:12 Laptop-Ralf avahi-daemon[812]: Withdrawing address record for 192.168.1.11 on wlp4s0.
nov 03 17:20:12 Laptop-Ralf avahi-daemon[812]: Leaving mDNS multicast group on interface wlp4s0.IPv4 with address 192.168.1.11.
nov 03 17:20:12 Laptop-Ralf avahi-daemon[812]: Interface wlp4s0.IPv4 no longer relevant for mDNS.
nov 03 17:20:12 Laptop-Ralf NetworkManager[825]: <info>  [1635956412.3667] device (wlp4s0): supplicant interface state: disconnected -> interface_disabled
nov 03 17:20:12 Laptop-Ralf NetworkManager[825]: <info>  [1635956412.3670] device (wlp4s0): state change: disconnected -> unmanaged (reason 'sleeping', sys-iface-state: 'managed')
nov 03 17:20:12 Laptop-Ralf NetworkManager[825]: <info>  [1635956412.3697] device (wlp4s0): set-hw-addr: reset MAC address to AC:ED:5C:57:43:E2 (unmanage)
nov 03 17:20:12 Laptop-Ralf kded5[1413]: plasma-nm: Not emitting connection deactivated notification as we're about to suspend
nov 03 17:20:12 Laptop-Ralf kded5[1413]: plasma-nm: Network connectivity limited, scheduling notification
nov 03 17:20:12 Laptop-Ralf wpa_supplicant[1070]: nl80211: deinit ifname=p2p-dev-wlp4s0 disabled_11b_rates=0
nov 03 17:20:12 Laptop-Ralf kscreenlocker_greet[2772]: Qt: Session management error: networkIdsList argument is NULL
nov 03 17:20:12 Laptop-Ralf wpa_supplicant[1070]: nl80211: deinit ifname=wlp4s0 disabled_11b_rates=0
nov 03 17:20:12 Laptop-Ralf systemd[1]: Reached target Sleep.
nov 03 17:20:12 Laptop-Ralf systemd[1]: Starting System Suspend...
nov 03 17:20:12 Laptop-Ralf systemd-sleep[2786]: Entering sleep state 'suspend'...
nov 03 17:20:12 Laptop-Ralf kernel: PM: suspend entry (deep)
nov 03 17:20:12 Laptop-Ralf kernel: Filesystems sync: 0.008 seconds
nov 03 17:25:00 Laptop-Ralf kernel: Freezing user space processes ... (elapsed 0.002 seconds) done.
nov 03 17:25:00 Laptop-Ralf kernel: OOM killer disabled.
nov 03 17:25:00 Laptop-Ralf kernel: Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
nov 03 17:25:00 Laptop-Ralf kernel: printk: Suspending console(s) (use no_console_suspend to debug)
nov 03 17:25:00 Laptop-Ralf kernel: e1000e: EEE TX LPI TIMER: 00000011
nov 03 17:25:00 Laptop-Ralf kernel: ACPI: EC: interrupt blocked
nov 03 17:25:00 Laptop-Ralf kernel: ACPI: Preparing to enter system sleep state S3
nov 03 17:25:00 Laptop-Ralf kernel: ACPI: EC: event blocked
nov 03 17:25:00 Laptop-Ralf kernel: ACPI: EC: EC stopped
nov 03 17:25:00 Laptop-Ralf kernel: PM: Saving platform NVS memory
nov 03 17:25:00 Laptop-Ralf kernel: Disabling non-boot CPUs ...

You can see the 5 minute jump where it was in sleep and then booted again.

I’m having the same issue as you, same logs as well. Did you manage to find a solution, or are still using Kernel 5.4.150-1-MANJARO.

EDIT: Kernel 5.4 does fix it for me after downgrading my nvidia-prime drivers to 470 from 495.

I was able to upgrade back to the latest kernel after updating to [Stable Update] 2022-01-02 - Kernels, Systemd, KDE Frameworks, Mesa, Xorg-Server, Wine, Python 3.10 (See the changelog about X-server)