diff options
| author | Todd Poynor <toddpoynor@google.com> | 2012-05-29 17:33:56 -0700 | 
|---|---|---|
| committer | Arve Hjønnevåg <arve@android.com> | 2013-07-01 13:40:48 -0700 | 
| commit | 639f69a560724de8eb62ef2dd163868c8737fee6 (patch) | |
| tree | c2304af6ebb7375584e0789d3060becb9aa87a1a /kernel/power/suspend.c | |
| parent | c8479b8fffbab3130d96dcb2363691bf0c8cc5c1 (diff) | |
| download | olio-linux-3.10-639f69a560724de8eb62ef2dd163868c8737fee6.tar.xz olio-linux-3.10-639f69a560724de8eb62ef2dd163868c8737fee6.zip | |
PM / Suspend: Print wall time at suspend entry and exit
Change-Id: I92f252414c013b018b9a392eae1ee039aa0e89dc
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Diffstat (limited to 'kernel/power/suspend.c')
| -rw-r--r-- | kernel/power/suspend.c | 15 | 
1 files changed, 15 insertions, 0 deletions
| diff --git a/kernel/power/suspend.c b/kernel/power/suspend.c index bef86d121eb..454568e6c8d 100644 --- a/kernel/power/suspend.c +++ b/kernel/power/suspend.c @@ -25,6 +25,7 @@  #include <linux/suspend.h>  #include <linux/syscore_ops.h>  #include <linux/ftrace.h> +#include <linux/rtc.h>  #include <trace/events/power.h>  #include "power.h" @@ -358,6 +359,18 @@ static int enter_state(suspend_state_t state)  	return error;  } +static void pm_suspend_marker(char *annotation) +{ +	struct timespec ts; +	struct rtc_time tm; + +	getnstimeofday(&ts); +	rtc_time_to_tm(ts.tv_sec, &tm); +	pr_info("PM: suspend %s %d-%02d-%02d %02d:%02d:%02d.%09lu UTC\n", +		annotation, tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, +		tm.tm_hour, tm.tm_min, tm.tm_sec, ts.tv_nsec); +} +  /**   * pm_suspend - Externally visible function for suspending the system.   * @state: System sleep state to enter. @@ -372,6 +385,7 @@ int pm_suspend(suspend_state_t state)  	if (state <= PM_SUSPEND_ON || state >= PM_SUSPEND_MAX)  		return -EINVAL; +	pm_suspend_marker("entry");  	error = enter_state(state);  	if (error) {  		suspend_stats.fail++; @@ -379,6 +393,7 @@ int pm_suspend(suspend_state_t state)  	} else {  		suspend_stats.success++;  	} +	pm_suspend_marker("exit");  	return error;  }  EXPORT_SYMBOL(pm_suspend); |