Linux's Bedtime Routine

submitted 4 weeks ago by pnutzh4x0r

tookmund.com/2024/09/hibernation-preparation

How does Linux move from an awake machine to a hibernating one? How does it then manage to restore all state? These questions led me to read way too much C in trying to figure out how this particular hardware/software boundary is navigated.

61

Log in to comment

13 Comments

This is certainly an interesting feature, though my one use case has become much less relevant now that systems boot so quickly.

Perhaps if you have long running jobs and no implementation of state saving it could find applications.

Boot times on AM5 are soooo slow due to some memory training feature of DDR-5, even after following many suggestions for settings. It appears to be a general issue with the platform, so hibernation is very much back on the menu for me.

Duh, it won’t matter since the delay is before POST.

On Asus motherboards you can enable ‘Memory Context Restore’, and it’ll remember the training. Unfortunately it seems rapid changes in the weather make my system unstable with it on.

I have an MSI motherboard. Memory Context Restore shaves significant time off of boots, but it is still extremely slow. Just a hang before I see POST complete.

hibernation is very much back on the menu for me

Uh, does hibernation on whatever you’re using not actually power the system completely off?

I mean, my build does, so it’s not really saving any “boot time”, where by boot I mean the minute or two you spend POSTing.

…yeah, I’m an idiot. I hadn’t thought very carefully about it yet. Won’t help me since the delay is before POST.

I was hoping you had figured out a way around that, lol.

My AM5 platform takes so long to boot (and other weirdnesses) that the only nice thing I have to say about it is at least it’s not Intel 13th/14th gen and literally melting.

Unfortunately not.

My AM5 has been pretty good, the boot issue notwithstanding. It has been quite stable at least. For me it’s a 7600x.