Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1658111

PM / Suspend: Print wall time at suspend entry and exit

From Mark Salyzyn <salyzyn@android.com>
Newsgroups linux.kernel
Subject PM / Suspend: Print wall time at suspend entry and exit
Date 2017-06-05 21:40 +0200
Message-ID <tP615-73d-37@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


Permits power state and battery life diagnosis.

Signed-off-by: Todd Poynor <toddpoynor@google.com>
Signed-off-by: Mark Salyzyn <salyzyn@android.com>
---
 kernel/power/suspend.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/kernel/power/suspend.c b/kernel/power/suspend.c
index c0248c74d6d4..464175f04bc5 100644
--- a/kernel/power/suspend.c
+++ b/kernel/power/suspend.c
@@ -26,6 +26,7 @@
 #include <linux/suspend.h>
 #include <linux/syscore_ops.h>
 #include <linux/ftrace.h>
+#include <linux/rtc.h>
 #include <trace/events/power.h>
 #include <linux/compiler.h>
 #include <linux/moduleparam.h>
@@ -563,6 +564,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.
@@ -577,6 +590,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++;
@@ -584,6 +598,7 @@ int pm_suspend(suspend_state_t state)
 	} else {
 		suspend_stats.success++;
 	}
+	pm_suspend_marker("exit");
 	return error;
 }
 EXPORT_SYMBOL(pm_suspend);
-- 
2.13.0.506.g27d5fe0cd-goog

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

PM / Suspend: Print wall time at suspend entry and exit Mark Salyzyn <salyzyn@android.com> - 2017-06-05 21:40 +0200
  PM / Hibernation: Print wall time at hibernation entry and exit Mark Salyzyn <salyzyn@android.com> - 2017-06-05 21:40 +0200
  Re: PM / Suspend: Print wall time at suspend entry and exit Pavel Machek <pavel@ucw.cz> - 2017-06-05 22:10 +0200
  Re: PM / Suspend: Print wall time at suspend entry and exit "Rafael J. Wysocki" <rafael@kernel.org> - 2017-06-05 23:00 +0200
    Re: PM / Suspend: Print wall time at suspend entry and exit Pavel Machek <pavel@ucw.cz> - 2017-06-05 23:20 +0200
      Re: PM / Suspend: Print wall time at suspend entry and exit Mark Salyzyn <salyzyn@android.com> - 2017-06-05 23:50 +0200
        Re: PM / Suspend: Print wall time at suspend entry and exit Mark Salyzyn <salyzyn@android.com> - 2017-06-06 00:20 +0200
          Re: PM / Suspend: Print wall time at suspend entry and exit Pavel Machek <pavel@ucw.cz> - 2017-06-06 00:50 +0200
            Re: PM / Suspend: Print wall time at suspend entry and exit Mark Salyzyn <salyzyn@android.com> - 2017-06-06 20:10 +0200

csiph-web