]> git.baikalelectronics.ru Git - kernel.git/commit
nohz: Prevent clocksource wrapping during idle
authorJon Hunter <jon-hunter@ti.com>
Tue, 18 Aug 2009 17:45:10 +0000 (12:45 -0500)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 13 Nov 2009 19:46:24 +0000 (20:46 +0100)
commit19aa305d3f2671565b463d7c9b6d9cc9e58014e3
treef3f69ad8f6cd47e72a75da6de49eb3402f15cd9b
parent6fa33757d2a260164c2fcd1162bdc6c82f71f664
nohz: Prevent clocksource wrapping during idle

The dynamic tick allows the kernel to sleep for periods longer than a
single tick, but it does not limit the sleep time currently. In the
worst case the kernel could sleep longer than the wrap around time of
the time keeping clock source which would result in losing track of
time.

Prevent this by limiting it to the safe maximum sleep time of the
current time keeping clock source. The value is calculated when the
clock source is registered.

[ tglx: simplified the code a bit and massaged the commit msg ]

Signed-off-by: Jon Hunter <jon-hunter@ti.com>
Cc: John Stultz <johnstul@us.ibm.com>
LKML-Reference: <1250617512-23567-2-git-send-email-jon-hunter@ti.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
include/linux/clocksource.h
include/linux/time.h
kernel/time/clocksource.c
kernel/time/tick-sched.c
kernel/time/timekeeping.c