summaryrefslogtreecommitdiffstats
path: root/kernel/power
diff options
context:
space:
mode:
authorShuah Khan <shuah.kh@samsung.com>2013-06-26 16:27:35 -0600
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-06-27 22:14:46 +0200
commit9dceefe483d7640ba0bbf3e53d1db880e7469aba (patch)
treeeab1027aa00fd0dae67a01314f1789dce7fa57c7 /kernel/power
parentf5ce1572109049b90484e2bb44927cb6034c5eb1 (diff)
downloadlinux-9dceefe483d7640ba0bbf3e53d1db880e7469aba.tar.bz2
PM / Sleep: Warn about system time after resume with pm_trace
pm_trace uses the system's Real Time Clock (RTC) to save the magic number. The reason for this is that the RTC is the only reliably available piece of hardware during resume operations where a value can be set that will survive a reboot. Consequence is that after a resume (even if it is successful) your system clock will have a value corresponding to the magic number instead of the correct date/time! It is therefore advisable to use a program like ntp-date or rdate to reset the correct date/time from an external time source when using this trace option. There is no run-time message to warn users of the consequences of enabling pm_trace. Adding a warning message to pm_trace_store() will serve as a reminder to users to set the system date and time after resume. Signed-off-by: Shuah Khan <shuah.kh@samsung.com> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'kernel/power')
-rw-r--r--kernel/power/main.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/power/main.c b/kernel/power/main.c
index 0828070d38b4..1d1bf630e6e9 100644
--- a/kernel/power/main.c
+++ b/kernel/power/main.c
@@ -530,6 +530,10 @@ pm_trace_store(struct kobject *kobj, struct kobj_attribute *attr,
if (sscanf(buf, "%d", &val) == 1) {
pm_trace_enabled = !!val;
+ if (pm_trace_enabled) {
+ pr_warn("PM: Enabling pm_trace changes system date and time during resume.\n"
+ "PM: Correct system time has to be restored manually after resume.\n");
+ }
return n;
}
return -EINVAL;