* [PATCH] PM / Sleep: Print last wakeup source on failed wakeup_count write
@ 2013-05-30 20:02 Julius Werner
2013-06-11 22:00 ` Rafael J. Wysocki
0 siblings, 1 reply; 4+ messages in thread
From: Julius Werner @ 2013-05-30 20:02 UTC (permalink / raw)
To: Rafael J. Wysocki
Cc: Len Brown, Pavel Machek, Todd Poynor, linux-pm, linux-kernel,
Sameer Nanda, Julius Werner
Commit a938da06 introduced a useful little log message to tell
users/debuggers which wakeup source aborted a suspend. However, this
message is only printed if the abort happens during the in-kernel
suspend path (after writing /sys/power/state).
The full specification of the /sys/power/wakeup_count facility allows
user-space power managers to double-check if wakeups have already
happened before it actually tries to suspend (e.g. while it was running
user-space pre-suspend hooks), by writing the last known wakeup_count
value to /sys/power/wakeup_count. This patch changes the sysfs handler
for that node to also print said log message if that write fails, so
that we can figure out the offending wakeup source for both kinds of
suspend aborts.
Signed-off-by: Julius Werner <jwerner@chromium.org>
---
drivers/base/power/wakeup.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/base/power/wakeup.c b/drivers/base/power/wakeup.c
index 79715e7..b0b7886 100644
--- a/drivers/base/power/wakeup.c
+++ b/drivers/base/power/wakeup.c
@@ -772,6 +772,8 @@ bool pm_save_wakeup_count(unsigned int count)
events_check_enabled = true;
}
spin_unlock_irqrestore(&events_lock, flags);
+ if (!events_check_enabled)
+ print_active_wakeup_sources();
return events_check_enabled;
}
--
1.7.12.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] PM / Sleep: Print last wakeup source on failed wakeup_count write
2013-05-30 20:02 [PATCH] PM / Sleep: Print last wakeup source on failed wakeup_count write Julius Werner
@ 2013-06-11 22:00 ` Rafael J. Wysocki
[not found] ` <CAODwPW9gt_E_rtVhk4bMO_EnGaLbRqca0xQosQBc7KuEtEDQXQ@mail.gmail.com>
0 siblings, 1 reply; 4+ messages in thread
From: Rafael J. Wysocki @ 2013-06-11 22:00 UTC (permalink / raw)
To: Julius Werner
Cc: Len Brown, Pavel Machek, Todd Poynor, linux-pm, linux-kernel,
Sameer Nanda
On Thursday, May 30, 2013 01:02:17 PM Julius Werner wrote:
> Commit a938da06 introduced a useful little log message to tell
> users/debuggers which wakeup source aborted a suspend. However, this
> message is only printed if the abort happens during the in-kernel
> suspend path (after writing /sys/power/state).
>
> The full specification of the /sys/power/wakeup_count facility allows
> user-space power managers to double-check if wakeups have already
> happened before it actually tries to suspend (e.g. while it was running
> user-space pre-suspend hooks), by writing the last known wakeup_count
> value to /sys/power/wakeup_count. This patch changes the sysfs handler
> for that node to also print said log message if that write fails, so
> that we can figure out the offending wakeup source for both kinds of
> suspend aborts.
>
> Signed-off-by: Julius Werner <jwerner@chromium.org>
> ---
> drivers/base/power/wakeup.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/base/power/wakeup.c b/drivers/base/power/wakeup.c
> index 79715e7..b0b7886 100644
> --- a/drivers/base/power/wakeup.c
> +++ b/drivers/base/power/wakeup.c
> @@ -772,6 +772,8 @@ bool pm_save_wakeup_count(unsigned int count)
> events_check_enabled = true;
> }
> spin_unlock_irqrestore(&events_lock, flags);
> + if (!events_check_enabled)
> + print_active_wakeup_sources();
This is going to be done in the autosleep case too, which I'm slightly
concerned about.
If you wanted to cover /sys/power/wakeup_count only, it would be better
to put that into wakeup_count_store(), but perhaps you wanted to cover
autosleep too?
> return events_check_enabled;
> }
Thanks,
Rafael
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-06-12 10:59 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-30 20:02 [PATCH] PM / Sleep: Print last wakeup source on failed wakeup_count write Julius Werner
2013-06-11 22:00 ` Rafael J. Wysocki
[not found] ` <CAODwPW9gt_E_rtVhk4bMO_EnGaLbRqca0xQosQBc7KuEtEDQXQ@mail.gmail.com>
2013-06-11 23:20 ` Julius Werner
2013-06-12 11:08 ` Rafael J. Wysocki
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).