kernel-hacking-2024-linux-s.../kernel/time
john stultz e05b2efb82 clocksource: Install completely before selecting
Christian Hoffmann reported that the command line clocksource override
with acpi_pm timer fails:

 Kernel command line: <SNIP> clocksource=acpi_pm
 hpet clockevent registered
 Switching to clocksource hpet
 Override clocksource acpi_pm is not HRT compatible.
 Cannot switch while in HRT/NOHZ mode.

The watchdog code is what enables CLOCK_SOURCE_VALID_FOR_HRES, but we
actually end up selecting the clocksource before we enqueue it into
the watchdog list, so that's why we see the warning and fail to switch
to acpi_pm timer as requested. That's particularly bad when we want to
debug timekeeping related problems in early boot.

Put the selection call last.

Reported-by: Christian Hoffmann <email@christianhoffmann.info>
Signed-off-by: John Stultz <johnstul@us.ibm.com>
Cc: stable@kernel.org # 32...
Link: http://lkml.kernel.org/r/%3C1304558210.2943.24.camel%40work-vm%3E
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2011-05-05 15:23:26 +02:00
..
clockevents.c time: Make do_timer() and xtime_lock local to kernel/time/ 2011-01-31 19:26:50 +01:00
clocksource.c clocksource: Install completely before selecting 2011-05-05 15:23:26 +02:00
jiffies.c Fix common misspellings 2011-03-31 11:26:23 -03:00
Kconfig time: Kill off CONFIG_GENERIC_TIME 2010-07-27 12:40:54 +02:00
Makefile posix clocks: Introduce dynamic clocks 2011-02-02 15:28:20 +01:00
ntp.c ntp: fix non privileged system time shifting 2011-04-04 08:31:23 -07:00
posix-clock.c posix clocks: Replace mutex with reader/writer semaphore 2011-04-18 10:39:38 +02:00
tick-broadcast.c Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2011-03-15 18:53:35 -07:00
tick-common.c Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2011-03-15 18:53:35 -07:00
tick-internal.h Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2011-03-15 18:53:35 -07:00
tick-oneshot.c time: Make do_timer() and xtime_lock local to kernel/time/ 2011-01-31 19:26:50 +01:00
tick-sched.c time: Make do_timer() and xtime_lock local to kernel/time/ 2011-01-31 19:26:50 +01:00
timecompare.c time: Use ARRAY_SIZE macro in timecompare.c 2010-10-21 17:30:06 +02:00
timeconv.c
timekeeping.c timekeeping: Use syscore_ops instead of sysdev class and sysdev 2011-03-23 22:16:04 +01: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 Fix common misspellings 2011-03-31 11:26:23 -03:00