lkml.org 
[lkml]   [2010]   [Sep]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: PM / Wakeup: Introduce wakeup source objects and event statistics (v2)
Date
"Rafael J. Wysocki" <rjw@sisk.pl> writes:

> From: Rafael J. Wysocki <rjw@sisk.pl>
> Subject: PM / Wakeup: Introduce wakeup source objects and event statistics (v2)
>
> Introduce struct wakeup_source for representing system wakeup sources
> within the kernel and for collecting statistics related to them.
> Make the recently introduced helper functions pm_wakeup_event(),
> pm_stay_awake() and pm_relax() use struct wakeup_source objects
> internally, so that wakeup statistics associated with wakeup devices
> can be collected and reported in a consistent way (the definition of
> pm_relax() is changed, which is harmless, because this function is
> not called directly by anyone yet). Introduce new wakeup-related
> sysfs device attributes in /sys/devices/.../power for reporting the
> device wakeup statistics.
>
> Change the global wakeup events counters event_count and
> events_in_progress into atomic variables, so that it is not necessary
> to acquire a global spinlock in pm_wakeup_event(), pm_stay_awake()
> and pm_relax(), which should allow us to avoid lock contention in
> these functions on SMP systems with many wakeup devices.
>
> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>

Hi Rafael,

This looks like a really useful feature. Was doing some experiments
with this on OMAP, and found a minor cut-and-paste bug in the
Documentation file:

[...]

> +What: /sys/devices/.../power/wakeup_max_time_ms
> +Date: September 2010
> +Contact: Rafael J. Wysocki <rjw@sisk.pl>
> +Description:
> + The /sys/devices/.../wakeup_max_time_ms attribute contains
> + the maximum time of processing a single wakeup event associated
> + with the device, in milliseconds. This attribute is read-only.
> + If the device is not enabled to wake up the system from sleep
> + states, this attribute is empty.
> +
> +What: /sys/devices/.../power/wakeup_max_time_ms
^^^
s/max/last/ for this one.

> +Date: September 2010
> +Contact: Rafael J. Wysocki <rjw@sisk.pl>
> +Description:
> + The /sys/devices/.../wakeup_last_time_ms attribute contains
> + the value of the monotonic clock corresponding to the time of
> + signaling the last wakeup event associated with the device, in
> + milliseconds. This attribute is read-only. If the device is
> + not enabled to wake up the system from sleep states, this
> + attribute is empty.

Kevin


\
 
 \ /
  Last update: 2010-09-17 02:43    [W:0.255 / U:0.144 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site