On Mon, Sep 20, 2010 at 07:59:09PM +0200, Rafael J. Wysocki wrote: > From: Rafael J. Wysocki <rjw@xxxxxxx> > Subject: PM / Wakeup: Introduce wakeup source objects and event statistics (v3) > > 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@xxxxxxx> Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxx> Nice job! _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm