Messages in this thread | | | From | "Rafael J. Wysocki" <> | Subject | Re: [PATCH 2/2] PM: CONFIG_SUSPEND_SKIP_SYNC sets default for, '/sys/power/sync_on_suspend' | Date | Fri, 20 Dec 2019 10:35:16 +0100 |
| |
On Monday, December 2, 2019 6:07:43 PM CET Jonas Meurer wrote: > Slightly change the behaviour of build-time switch CONFIG_SUSPEND_SKIP_SYNC: > Make it configure the default for '/sys/power/sync_on_suspend', now that we > have a run-time switch for it. > > Signed-off-by: Jonas Meurer <jonas@freesources.org> > --- > Documentation/ABI/testing/sysfs-power | 7 ++++--- > kernel/power/Kconfig | 5 ++++- > kernel/power/main.c | 2 +- > kernel/power/suspend.c | 2 +- > 4 files changed, 10 insertions(+), 6 deletions(-) > > diff --git a/Documentation/ABI/testing/sysfs-power b/Documentation/ABI/testing/sysfs-power > index f164a364e89a..783b3ce8eb06 100644 > --- a/Documentation/ABI/testing/sysfs-power > +++ b/Documentation/ABI/testing/sysfs-power > @@ -418,6 +418,7 @@ Description: > aware that you have to take care of sync() yourself before > suspending the system if you disable it here. > > - Writing a "1" (default) to this file enables the sync() and > - writing a "0" disables it. Reads from the file return the > - current value. > + Writing a "1" to this file enables the sync() and writing a > + "0" disables it. Reads from the file return the current value. > + The default is "1" but can be configured with the build-time > + config flag "SUSPEND_SKIP_SYNC". > diff --git a/kernel/power/Kconfig b/kernel/power/Kconfig > index d3667b4075c1..7cbfbeacd68a 100644 > --- a/kernel/power/Kconfig > +++ b/kernel/power/Kconfig > @@ -27,7 +27,10 @@ config SUSPEND_SKIP_SYNC > Skip the kernel sys_sync() before freezing user processes. > Some systems prefer not to pay this cost on every invocation > of suspend, or they are content with invoking sync() from > - user-space before invoking suspend. Say Y if that's your case. > + user-space before invoking suspend. There's a run-time switch > + at '/sys/power/sync_on_suspend' to configure this behaviour. > + This setting changes the default for the run-tim switch. Say Y > + to change the default to disable the kernel sys_sync(). > > config HIBERNATE_CALLBACKS > bool > diff --git a/kernel/power/main.c b/kernel/power/main.c > index 7d9d579a8e6f..69b7a8aeca3b 100644 > --- a/kernel/power/main.c > +++ b/kernel/power/main.c > @@ -197,7 +197,7 @@ power_attr(mem_sleep); > * show() returns whether ksys_sync_helper() is invoked before suspend. > * store() accepts 0 or 1. 0 disables ksys_sync_helper() and 1 enables it. > */ > -bool sync_on_suspend_enabled = true; > +bool sync_on_suspend_enabled = !IS_ENABLED(CONFIG_SUSPEND_SKIP_SYNC); > > static ssize_t sync_on_suspend_show(struct kobject *kobj, > struct kobj_attribute *attr, char *buf) > diff --git a/kernel/power/suspend.c b/kernel/power/suspend.c > index 503d56419a69..2c47280fbfc7 100644 > --- a/kernel/power/suspend.c > +++ b/kernel/power/suspend.c > @@ -564,7 +564,7 @@ static int enter_state(suspend_state_t state) > if (state == PM_SUSPEND_TO_IDLE) > s2idle_begin(); > > - if (!IS_ENABLED(CONFIG_SUSPEND_SKIP_SYNC) && sync_on_suspend_enabled) { > + if (sync_on_suspend_enabled) { > trace_suspend_resume(TPS("sync_filesystems"), 0, true); > ksys_sync_helper(); > trace_suspend_resume(TPS("sync_filesystems"), 0, false); >
I don't see much value in splitting the changes into two patches. On the contrary, this patch is a logical part of the full change, so IMO it should be folded into the [1/2].
Please do so and resubmit.
Thanks!
| |