aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/time/timekeeping.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/time/timekeeping.c')
-rw-r--r--kernel/time/timekeeping.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index 77680195cf84..092a2366b5a9 100644
--- a/kernel/time/timekeeping.c
+++ b/kernel/time/timekeeping.c
@@ -186,7 +186,8 @@ static void change_clocksource(void)
186 186
187 clock->error = 0; 187 clock->error = 0;
188 clock->xtime_nsec = 0; 188 clock->xtime_nsec = 0;
189 clocksource_calculate_interval(clock, NTP_INTERVAL_LENGTH); 189 clocksource_calculate_interval(clock,
190 (unsigned long)(current_tick_length()>>TICK_LENGTH_SHIFT));
190 191
191 tick_clock_notify(); 192 tick_clock_notify();
192 193
@@ -243,7 +244,8 @@ void __init timekeeping_init(void)
243 ntp_clear(); 244 ntp_clear();
244 245
245 clock = clocksource_get_next(); 246 clock = clocksource_get_next();
246 clocksource_calculate_interval(clock, NTP_INTERVAL_LENGTH); 247 clocksource_calculate_interval(clock,
248 (unsigned long)(current_tick_length()>>TICK_LENGTH_SHIFT));
247 clock->cycle_last = clocksource_read(clock); 249 clock->cycle_last = clocksource_read(clock);
248 250
249 xtime.tv_sec = sec; 251 xtime.tv_sec = sec;