Bug 2435841

Summary: HybridSleep should not be the default CriticalPowerAction as it doesn't work by default
Product: [Fedora] Fedora Reporter: Nick <fedora>
Component: upowerAssignee: Kate Hsuan <hpa>
Status: CLOSED COMPLETED QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 43CC: benjamin-fedora, hpa
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2026-04-23 22:09:27 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Nick 2026-02-01 20:30:01 UTC
I'm a reasonably new user of Fedora, so please let me know if this is not the appropriate place to raise this.

Fedora in its default configuration as installed does not support the Hybrid Sleep mode, because it doesn't set up appropriate swap space for it. Running the `systemctl hybrid-sleep` command confirms this with the error message `Call to HybridSleep failed: Not enough suitable swap space for hibernation available on compatible block devices and file systems`.

However the default UPower.conf sets CriticalPowerAction=HybridSleep. This means that when my laptop reaches the critical percentage of battery (2% by default), UPower tries to enter HybridSleep mode, fails, and so the laptop just stays on consuming full power until it runs out of battery and all is lost.

This seems like bad default behaviour to me.

Instead, either the CriticalPowerAction should be changed to something which is supported by the default install, or the default install should be changed to support the CriticalPowerAction. From light research it sounds like the switch away from assigning swap space by default is quite new, so I presume that's a decision that has good reasons behind it, so therefore I suggest that UPower.conf be changed so that CriticalPowerAction=Suspend, and AllowRiskyCriticalPowerAction=true. I'd also suggest increasing the PercentageAction to 5.0 or similar to account for the fact that the battery will still be drained slowly from this state, unlike in HybridSleep. I am aware that the implication is that this is switching to a more "risky" configuration, but the reality is that suspending on low battery is much less risky than doing nothing, which is what is actually happening at the moment.

I'm very happy to make a PR to the repo with the above changes (or others, based on feedback).

Reproducible: Always

Steps to Reproduce:
1. Let battery run to 2% capacity
Actual Results:
No effective action is taken by UPower. I didn't see anything in the logs from `journalctl -u upower`

Expected Results:
Some lower power state is entered when the battery is very low.

Comment 1 Nick 2026-02-19 10:27:23 UTC
I just created a PR adding a config file to /etc/UPower/UPower.conf.d to change the default behaviour to Suspend on critically low power: https://src.fedoraproject.org/rpms/upower/pull-request/8

Comment 2 Kate Hsuan 2026-02-25 07:02:20 UTC
Thank you for reporting the issue.

I noticed this error and will fix it in Upower.
After fixing it, the new release of upower could resolve the issue:)

In the meantime, you can set the CriticalPowerAction to Suspend as a workaround and restart upower to fix the issue.

Comment 3 Kate Hsuan 2026-03-16 07:52:06 UTC
Next upower release will resolve this issue.

Comment 4 Kate Hsuan 2026-04-09 07:07:06 UTC
Hi Nick,

The new release of the package was pushed.
You can update the upower package and test it.

Thank you :)

Comment 5 Nick 2026-04-23 22:09:27 UTC
That's great, thanks Kate! I've been super busy so haven't been able to test it, but I will soon, and in the unlikely event that it doesn't resolve things for me I'll leave a note.