News: 0001549107

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Linux 6.16 Adds Ability For Power Code To Freeze The File-System For Suspend & Hibernate

([Linux Storage] 3 Hours Ago Filesystem Freezing)


Among the many VFS pull requests merged today by Linus Torvalds for the now-open [1]Linux 6.16 merge window is support by the power subsystem for being able to initiate file-system freeze/thaw events as part of the system suspend and resume cycle.

Linux engineer Christian Brauner at Microsoft submitted the "VFS freeze" updates for Linux 6.16 with those commits he primarily worked on around letting the power subsystem support file-system freezing for system suspend and hibernation. Brauner explained in the [2]pull request :

"Allow the power subsystem to support filesystem freeze for suspend and hibernate.

Now all the pieces are in place to actually allow the power subsystem to freeze/thaw filesystems during suspend/resume. Filesystems are only frozen and thawed if the power subsystem does actually own the freeze.

If the filesystem is already frozen by the time we've frozen all userspace processes we don't care to freeze it again. That's userspace's job once the process resumes. We only actually freeze filesystems if we absolutely have to and we ignore other failures to freeze.

We could bubble up errors and fail suspend/resume if the error isn't EBUSY (aka it's already frozen) but I don't think that this is worth it. Filesystem freezing during suspend/resume is best-effort. If the user has 500 ext4 filesystems mounted and 4 fail to freeze for whatever reason then we simply skip them.

What we have now is already a big improvement and let's see how we fare with it before making our lives even harder (and uglier) than we have to."

As part of that work is also adding /sys/power/freeze_filesystems to allow for user-space to freeze filesystems during suspend and hibernate. The VFS freeze pull request also adds freeze/thaw support to the EFI variables (efivars) code.

More details for those interested via [3]this Git merge .



[1] https://www.phoronix.com/search/Linux+6.16

[2] https://lore.kernel.org/lkml/20250523-vfs-freeze-8e3934479cba@brauner/

[3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=8dd53535f1e129b7d75c512dc271bff76461ab6b



phoronix

Nouvelle cuisine, n.:
French for "not enough food".

Continental breakfast, n.:
English for "not enough food".

Tapas, n.:
Spanish for "not enough food".

Dim Sum, n.:
Chinese for more food than you've ever seen in your entire life.