summaryrefslogtreecommitdiffstats
path: root/kernel/time
diff options
context:
space:
mode:
authorpang.xunlei <pang.xunlei@linaro.org>2014-10-09 15:04:31 +0800
committerJohn Stultz <john.stultz@linaro.org>2014-11-21 11:59:56 -0800
commit659bc17b80c692e0ccda757e207fc4666d9b3e71 (patch)
treefa3862991f0e8490b3b20e862a3d16721daa786e /kernel/time
parent6067dc5a8c2b1b57e67eaf1125db1d63c1ed6361 (diff)
downloadlinux-659bc17b80c692e0ccda757e207fc4666d9b3e71.tar.gz
linux-659bc17b80c692e0ccda757e207fc4666d9b3e71.tar.xz
time: Complete NTP adjustment threshold judging conditions
The clocksource mult-adjustment threshold is [mult-maxadj, mult+maxadj], timekeeping_adjust() only deals with the upper threshold, but misses the lower threshold. This patch adds the lower threshold judging condition. Signed-off-by: pang.xunlei <pang.xunlei@linaro.org> [jstultz: Minor fix for > 80 char line] Signed-off-by: John Stultz <john.stultz@linaro.org>
Diffstat (limited to 'kernel/time')
-rw-r--r--kernel/time/timekeeping.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index cad61b3f6bea..41fcbe19ccfe 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -1403,7 +1403,8 @@ static void timekeeping_adjust(struct timekeeper *tk, s64 offset)
}
if (unlikely(tk->tkr.clock->maxadj &&
- (tk->tkr.mult > tk->tkr.clock->mult + tk->tkr.clock->maxadj))) {
+ (abs(tk->tkr.mult - tk->tkr.clock->mult)
+ > tk->tkr.clock->maxadj))) {
printk_once(KERN_WARNING
"Adjusting %s more than 11%% (%ld vs %ld)\n",
tk->tkr.clock->name, (long)tk->tkr.mult,