Re: [PATCH v2] mm: Enable suspend-only swap spaces
From: Evan Green <hidden>
Date: 2021-07-12 21:37:21
Also in:
lkml
On Fri, Jul 9, 2021 at 4:33 PM Andrew Morton [off-list ref] wrote:
On Fri, 9 Jul 2021 16:23:18 -0700 Evan Green [off-list ref] wrote:quoted
On Fri, Jul 9, 2021 at 3:20 PM Andrew Morton [off-list ref] wrote:quoted
On Fri, 9 Jul 2021 10:50:48 -0700 Evan Green [off-list ref] wrote:quoted
Currently it's not possible to enable hibernation without also enabling generic swap for a given swap area. These two use cases are not the same. For example there may be users who want to enable hibernation, but whose drives don't have the write endurance for generic swap activities. Add a new SWAP_FLAG_NOSWAP that adds a swap region but refuses to allow generic swapping to it. This region can still be wired up for use in suspend-to-disk activities, but will never have regular pages swapped to it. Swap regions with SWAP_FLAG_NOSWAP set will not appear in /proc/meminfo under SwapTotal and SwapFree, since they are not usable as general swap.This patch doesn't appear to set SWAP_FLAG_NOSWAP anywhere. Perhaps there's another patch somewhere which changes the hibernation code? If so, can we please have both patches in a series?There's no other patch, in the kernel at least. SWAP_FLAG_* is exposed to usermode, which would set it when calling swapon(2). Once this patch is accepted, I'll have to add the option into util-linux [1], so that I can use it in my init scripts. Said a different way, this patch isn't about altering how hibernate behaves, but about giving usermode the freedom to set up hibernate and swap independently.OK, can we please get this into the changelog? And it would be helpful to describe how this will be invoked via swapon(8).
Sure, I can augment the commit text to include some of this, and what it would likely look like from the commandline. I'll send a v3 for that.
And I expect an update to the swapon syscall's manpage will be in order.
Yes! I was originally planning to do that once this was accepted, but can also spin it up in parallel if requested. -Evan