Power button doesn't reallly suspend in Fedora 35, draining battery and killing it multiple times a day

Hi,

Pressing the power button shuts down the screen and logs me out, as expected. But it doesn’t stop the power draw, heating up my computer while it’s in my backpack and draining my battery to the point of shutting down. When the Framework inevitably shuts down between meetings or commutes, I have to charge it, log in, and open everything I was working on (or lose unsaved work).

When pressing the power button to suspend, its LED remains with the stable light, as if the computer was still fully on. This behavior is opposed to the light slowly fading in and out, which is what it did up until a couple of weeks ago, when this whole issue didn’t even exist.

I’m not sure what changed.

I searched for similar problems, but none seemed similar enough.

Perhaps Chiraag_Nataraj suggestion of suspending, turning on, then immediately running sudo journalctl -xe and searching for “sleep” will help. Here is what I found when running the command and typing $ sleep.

Apr 07 15:54:19 fedora NetworkManager[1924]: <info> [1649368459.8321] manager: sleep: wake requested (sleeping: yes enabled: yes)

What could be causing this? How could I try to fix it?
Thanks!

2 Likes

When pressing the power button to suspend, its LED remains with the stable light, as if the computer was still fully on.

I believe I’m also having this issue (running Manjaro), though it doesn’t sound as severe as your case. I put the laptop (and myself) to sleep, and when I woke up the battery had depleted by 30%.

Here’s a journal excerpt (tested putting the laptop to sleep at 1:39 and waking it up at 1:40)

Apr 09 01:39:52 kaori NetworkManager[383]: <info>  [1649464792.0961] device (wlp0s20f3): state change: disconnected -> unmanaged (reason 'sleeping', sys-iface>
Apr 09 01:39:52 kaori audit: BPF prog-id=0 op=UNLOAD
Apr 09 01:39:52 kaori kernel: audit: type=1334 audit(1649464792.104:250): prog-id=0 op=UNLOAD
Apr 09 01:39:52 kaori wpa_supplicant[875]: wlp0s20f3: CTRL-EVENT-REGDOM-CHANGE init=DRIVER type=WORLD
Apr 09 01:39:52 kaori NetworkManager[383]: <info>  [1649464792.2114] device (wlp0s20f3): set-hw-addr: reset MAC address to 20:1E:88:00:AF:AF (unmanage)
Apr 09 01:39:52 kaori systemd[1]: Reached target Sleep.
Apr 09 01:39:52 kaori systemd[1]: Starting System Suspend...
Apr 09 01:39:52 kaori wpa_supplicant[875]: p2p-dev-wlp0s20: CTRL-EVENT-DSCP-POLICY clear_all
Apr 09 01:39:52 kaori wpa_supplicant[875]: p2p-dev-wlp0s20: CTRL-EVENT-DSCP-POLICY clear_all
Apr 09 01:39:52 kaori wpa_supplicant[875]: nl80211: deinit ifname=p2p-dev-wlp0s20 disabled_11b_rates=0
Apr 09 01:39:52 kaori wpa_supplicant[875]: wlp0s20f3: CTRL-EVENT-DSCP-POLICY clear_all
Apr 09 01:39:52 kaori systemd-sleep[64262]: Entering sleep state 'suspend'...
Apr 09 01:39:52 kaori kernel: PM: suspend entry (s2idle)
Apr 09 01:39:52 kaori kernel: Filesystems sync: 0.018 seconds
Apr 09 01:40:24 kaori kernel: Freezing user space processes ... (elapsed 0.005 seconds) done.
Apr 09 01:40:24 kaori kernel: OOM killer disabled.
Apr 09 01:40:24 kaori kernel: Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Apr 09 01:40:24 kaori kernel: printk: Suspending console(s) (use no_console_suspend to debug)
Apr 09 01:40:24 kaori kernel: ACPI: EC: interrupt blocked
Apr 09 01:40:24 kaori kernel: ACPI: EC: interrupt unblocked
Apr 09 01:40:24 kaori kernel: nvme nvme0: 8/0/0 default/read/poll queues
Apr 09 01:40:24 kaori kernel: OOM killer enabled.
Apr 09 01:40:24 kaori kernel: Restarting tasks ... 
Apr 09 01:40:24 kaori kernel: usb 2-3: USB disconnect, device number 2
Apr 09 01:40:24 kaori kernel: mei_hdcp 0000:00:16.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops i915_hdcp_component_ops [i915])
Apr 09 01:40:24 kaori wpa_supplicant[875]: wlp0s20f3: CTRL-EVENT-DSCP-POLICY clear_all
Apr 09 01:40:24 kaori wpa_supplicant[875]: nl80211: deinit ifname=wlp0s20f3 disabled_11b_rates=0
Apr 09 01:40:24 kaori kernel: done.
Apr 09 01:40:24 kaori kernel: PM: suspend exit
Apr 09 01:40:24 kaori systemd-sleep[64262]: System returned from sleep state.

I don’t really know what to make of this though, I don’t know what it’s supposed to look like when it’s working…

Suspend keeps your session in RAM, which does require a constant power draw (volatile memory is wiped when power is interrupted).

You may be thinking of hibernation, where the session is written to swap space on the disk and the machine is more fully powered off. Hibernation is not enabled by default on Fedora (nor is swap, for that matter).

Hibernation can be enabled, although it’s a little tricky because you need to make a swap partition and change a few kernel parameters. This person put together a guide if you want to take a crack at it:

1 Like

Oh yep, that makes perfect sense - I’m just surprised the battery drain is quite so fast, and that the power light never changes to indicate that the machine is now suspended.

This wasn’t the case on my previous machines, though some of them did encounter the “I’m gonna wake up in your bag and get really hot for no reason” issue - especially the macbook I had to use for work.

I still have a Windows partition on my Framework (on which I’ve disabled hibernation), so I’ll have to compare against that some time.

1 Like

It sounds the same as posted here.

When the system is in standby mode the power led will pulse. If your power led is not pulsing and is solid, then the computer is still on.

As suspend works on Fedora and Ubuntu for me, this must be a configuration issue.

Hi, can I ask what kernel/OS versions you are running? I have been having standby irregularities since 5.16.5.

I decided to quickly compare the standby drain when using the power button vs the lid closed. I only did one test for each but they returned similar numbers (~0.75W/h) so I think the system is entering standby even if the button is not pulsating.