Software > Operating Systems and Porting
hibernate / resume / suspend-to-disk (STD) doesn't need hardware support?
pocock:
I already started another thread here about all the suspend modes, including suspend to RAM and the special modes of the POWER9 architecture. I'm starting this new thread to focus on hibernate, in other words, suspend-to-disk (STD)
There is a section about hibernation in the official Linux kernel guide. They state:
--- Quote ---Hibernation
This state (also referred to as Suspend-to-Disk or STD) offers the greatest energy savings and can be used even in the absence of low-level platform support for system suspend.
--- End quote ---
This means it doesn't matter if POWER9 or the motherboard (Talos II, Blackbird, Condor) have any hardware support for hibernation. The suspend and resume work is all done by the operating system.
The kernel guide goes on to state:
--- Quote ---However, it requires some low-level code for resuming the system to be present for the underlying CPU architecture.
--- End quote ---
Is that code already available in any newer kernels?
Is that code available in any alternative operating system like FreeBSD or OpenBSD?
I did a check on one of my own systems and it doesn't appear to support it, disk is missing from the output:
$ cat /sys/power/state
freeze mem
Here is the same command on an Intel host, notice the disk support is listed there:
$ cat /sys/power/state
freeze mem disk
tle:
I too can confirm Suspend to Disk is missing with Fedora 39 (kernel 6.5.0). So I think this feature is not supported *yet*.
I also tried suspend to RAM on Fedora 39 and it works for me.
MPC7500:
That's good news, finally.
Corvidae:
--- Quote from: tle on August 28, 2023, 05:39:34 am ---I too can confirm Suspend to Disk is missing with Fedora 39 (kernel 6.5.0). So I think this feature is not supported *yet*.
I also tried suspend to RAM on Fedora 39 and it works for me.
--- End quote ---
If that's true, that would be great. If you do a
--- Code: ---cat /sys/power/mem_sleep
--- End code ---
command, what does it show? I'm wondering if the "suspend to RAM" you got is actually just s2idle. It's better than nothing, and if you're able to get out of it by pressing a key then you got further than I did when I last tried it.
I really hope I'm wrong and you actually got real suspend to memory, but my outlook towards suspend on POWER is a bit more cynical after finding that the story for power management on this platform is often "no support". As an example - there is no PCIE power management, so it is impossible to safely put devices in a low-power state. You *might* be able to completely cut power with some OPAL command, but it's been a while since I looked. Even then, IIRC the PCIE spec requires the system to put the device in D3Hot (low power) before going into D3Cold (no power), so that doesn't solve the problem.
Edit: One thing that might not look so bleak - I tried turning all of the suspend-related options back on in my kernel config after reading this, and when I do
--- Code: ---cat /sys/power/state
--- End code ---
, I *do* see "disk" in there. I know what I'll be trying this weekend...
tle:
--- Code: ---cat /sys/power/mem_sleep
[s2idle]
--- End code ---
It is s2idle... better than nothing I guess
Btw, which kernel config you enabled? Keen to try that on Fedora 39 too
Navigation
[0] Message Index
[#] Next page
Go to full version