linux/kernel/time
Thomas Gleixner 3a142a0672 clockevents: Prevent oneshot mode when broadcast device is periodic
When the per cpu timer is marked CLOCK_EVT_FEAT_C3STOP, then we only
can switch into oneshot mode, when the backup broadcast device
supports oneshot mode as well. Otherwise we would try to switch the
broadcast device into an unsupported mode unconditionally. This went
unnoticed so far as the current available broadcast devices support
oneshot mode. Seth unearthed this problem while debugging and working
around an hpet related BIOS wreckage.

Add the necessary check to tick_is_oneshot_available().

Reported-and-tested-by: Seth Forshee <seth.forshee@canonical.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
LKML-Reference: <alpine.LFD.2.00.1102252231200.2701@localhost6.localdomain6>
Cc: stable@kernel.org # .21 ->
2011-02-26 09:45:28 +01:00
..
Kconfig time: Kill off CONFIG_GENERIC_TIME 2010-07-27 12:40:54 +02:00
Makefile time: add function to convert between calendar time and broken-down time for universal use 2009-09-24 07:20:56 -07:00
clockevents.c clockevent: Don't remove broadcast device when cpu is dead 2010-01-18 14:44:50 +01:00
clocksource.c Merge branches 'core-fixes-for-linus', 'x86-fixes-for-linus', 'timers-fixes-for-linus' and 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2011-01-15 12:45:00 -08:00
jiffies.c clocksource: Cleanup clocksource selection 2009-08-15 10:55:46 +02:00
ntp.c ntp: add hardpps implementation 2011-01-13 08:03:20 -08:00
tick-broadcast.c clockevents: Prevent oneshot mode when broadcast device is periodic 2011-02-26 09:45:28 +01:00
tick-common.c clockevents: Prevent oneshot mode when broadcast device is periodic 2011-02-26 09:45:28 +01:00
tick-internal.h clockevents: Prevent oneshot mode when broadcast device is periodic 2011-02-26 09:45:28 +01:00
tick-oneshot.c core: Replace __get_cpu_var with __this_cpu_read if not used for an address. 2010-12-17 15:07:19 +01:00
tick-sched.c hrtimers: Notify hrtimer users of switches to NOHZ mode 2011-01-19 20:08:15 +01:00
timecompare.c time: Use ARRAY_SIZE macro in timecompare.c 2010-10-21 17:30:06 +02:00
timeconv.c time: add function to convert between calendar time and broken-down time for universal use 2009-09-24 07:20:56 -07:00
timekeeping.c Merge branches 'core-fixes-for-linus', 'x86-fixes-for-linus', 'timers-fixes-for-linus' and 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2011-01-15 12:45:00 -08:00
timer_list.c timer debug: Hide kernel addresses via %pK in /proc/timer_list 2011-02-12 14:11:56 +01:00
timer_stats.c hrtimers: Convert to raw_spinlocks 2009-12-14 23:55:34 +01:00