diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2013-05-29 11:55:01 +0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2013-05-29 11:55:01 +0400 |
commit | 67dd331c5d811b2e50c935a24c82f31b61c6dcd3 (patch) | |
tree | 0980dd54ec6ea9566be374738baacafd8b9c7492 /kernel/time | |
parent | 15ef0298deb3929eb6ad6d2334fd2059fd53807c (diff) | |
parent | 0d6bd9953f739dad96d9a0de65383e479ab4e10d (diff) | |
download | linux-67dd331c5d811b2e50c935a24c82f31b61c6dcd3.tar.xz |
Merge branch 'fortglx/3.10/time' of git://git.linaro.org/people/jstultz/linux into timers/urgent
Diffstat (limited to 'kernel/time')
-rw-r--r-- | kernel/time/ntp.c | 1 | ||||
-rw-r--r-- | kernel/time/timekeeping.c | 8 |
2 files changed, 8 insertions, 1 deletions
diff --git a/kernel/time/ntp.c b/kernel/time/ntp.c index 12ff13a838c6..8f5b3b98577b 100644 --- a/kernel/time/ntp.c +++ b/kernel/time/ntp.c @@ -874,7 +874,6 @@ static void hardpps_update_phase(long error) void __hardpps(const struct timespec *phase_ts, const struct timespec *raw_ts) { struct pps_normtime pts_norm, freq_norm; - unsigned long flags; pts_norm = pps_normalize_ts(*phase_ts); diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c index 98cd470bbe49..baeeb5c87cf1 100644 --- a/kernel/time/timekeeping.c +++ b/kernel/time/timekeeping.c @@ -975,6 +975,14 @@ static int timekeeping_suspend(void) read_persistent_clock(&timekeeping_suspend_time); + /* + * On some systems the persistent_clock can not be detected at + * timekeeping_init by its return value, so if we see a valid + * value returned, update the persistent_clock_exists flag. + */ + if (timekeeping_suspend_time.tv_sec || timekeeping_suspend_time.tv_nsec) + persistent_clock_exist = true; + raw_spin_lock_irqsave(&timekeeper_lock, flags); write_seqcount_begin(&timekeeper_seq); timekeeping_forward_now(tk); |