]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
timekeeping: Increment clock_was_set_seq in timekeeping_init()
authorThomas Gleixner <tglx@linutronix.de>
Fri, 16 Oct 2015 13:50:22 +0000 (15:50 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 27 Oct 2015 00:53:43 +0000 (09:53 +0900)
commit31a07f6dc6f16fafab8bebd673e653299bd03c93
treee5cb276141db05461fb8c2ebee1af71550aadb22
parent0c6eb5c35590b5105e4307c896f1c14e6e1e4915
timekeeping: Increment clock_was_set_seq in timekeeping_init()

commit 56fd16cabac9cd8f15e2902898a9d0cc96e2fa70 upstream.

timekeeping_init() can set the wall time offset, so we need to
increment the clock_was_set_seq counter. That way hrtimers will pick
up the early offset immediately. Otherwise on a machine which does not
set wall time later in the boot process the hrtimer offset is stale at
0 and wall time timers are going to expire with a delay of 45 years.

Fixes: 868a3e915f7f "hrtimer: Make offset update smarter"
Reported-and-tested-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Stefan Liebler <stli@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: John Stultz <john.stultz@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/time/timekeeping.c