john stultz
3f4a0b917c
[PATCH] i386 Time: Avoid PIT SMP lockups
...
Avoid possible PIT livelock issues seen on SMP systems (and reported by
Andi), by not allowing it as a clocksource on SMP boxes.
However, since the PIT may no longer be present, we have to properly handle
the cases where SMP systems have TSC skew and fall back from the TSC.
Since the PIT isn't there, it would "fall back" to the TSC again. So this
changes the jiffies rating to 1, and the TSC-bad rating value to 0.
Thus you will get the following behavior priority on i386 systems:
tsc [if present & stable]
hpet [if present]
cyclone [if present]
acpi_pm [if present]
pit [if UP]
jiffies
Rather then the current more complicated:
tsc [if present & stable]
hpet [if present]
cyclone [if present]
acpi_pm [if present]
pit [if cpus < 4]
tsc [if present & unstable]
jiffies
Signed-off-by: John Stultz <johnstul@us.ibm.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-10-17 08:18:42 -07:00
..
irq
[PATCH] bitmap: parse input from kernel and user buffers
2006-10-11 11:14:22 -07:00
power
[PATCH] swsusp: Use suspend_console
2006-10-11 11:14:14 -07:00
time
[PATCH] i386 Time: Avoid PIT SMP lockups
2006-10-17 08:18:42 -07:00
.gitignore
acct.c
[PATCH] csa: convert CONFIG tag for extended accounting routines
2006-10-01 00:39:29 -07:00
audit.c
[PATCH] kauditd_thread warning fix
2006-10-06 08:53:39 -07:00
audit.h
[PATCH] audit: AUDIT_PERM support
2006-09-11 13:32:30 -04:00
auditfilter.c
[PATCH] arch filter lists with < or > should not be accepted
2006-10-04 08:31:16 -04:00
auditsc.c
[PATCH] name_count array overrun
2006-10-04 08:31:21 -04:00
capability.c
[PATCH] pidspace: is_init()
2006-09-29 09:18:12 -07:00
compat.c
[PATCH] BLOCK: Revert patch to hack around undeclared sigset_t in linux/compat.h
2006-10-02 08:03:31 -07:00
configs.c
cpu.c
[PATCH] Disable CPU hotplug during suspend
2006-09-26 08:48:59 -07:00
cpuset.c
[PATCH] cpuset ANSI prototype
2006-10-10 15:37:23 -07:00
delayacct.c
dma.c
[PATCH] kernel-doc for kernel/dma.c
2006-10-03 08:03:41 -07:00
exec_domain.c
exit.c
[PATCH] namespaces: exit_task_namespaces() invalidates nsproxy
2006-10-02 07:57:21 -07:00
extable.c
fork.c
[PATCH] IPC namespace - utils
2006-10-02 07:57:22 -07:00
futex.c
[PATCH] __user annotations: futex
2006-10-10 15:37:22 -07:00
futex_compat.c
[PATCH] __user annotations: futex
2006-10-10 15:37:22 -07:00
hrtimer.c
[PATCH] posix-timers: Fix clock_nanosleep() doesn't return the remaining time in compatibility mode
2006-09-29 09:18:15 -07:00
itimer.c
kallsyms.c
[PATCH] Create kallsyms_lookup_size_offset()
2006-10-03 08:03:41 -07:00
Kconfig.hz
Kconfig.preempt
kexec.c
[PATCH] kexec warning fix
2006-09-29 09:18:15 -07:00
kfifo.c
[PATCH] memory ordering in __kfifo primitives
2006-09-29 09:18:13 -07:00
kmod.c
[PATCH] introduce kernel_execve
2006-10-02 07:57:23 -07:00
kprobes.c
[PATCH] kretprobe spinlock deadlock patch
2006-10-02 07:57:16 -07:00
ksysfs.c
kthread.c
latency.c
[PATCH] maximum latency tracking infrastructure
2006-10-01 00:39:19 -07:00
lockdep.c
[PATCH] lockdep: increase max allowed recursion depth
2006-10-17 08:18:42 -07:00
lockdep_internals.h
[PATCH] lockdep: double the number of stack-trace entries
2006-09-13 07:32:14 -07:00
lockdep_proc.c
Makefile
[PATCH] srcu-3: RCU variant permitting read-side blocking
2006-10-04 07:55:30 -07:00
module.c
[PATCH] fix Module taint flags listing in Oops/panic
2006-10-11 11:14:21 -07:00
mutex-debug.c
mutex-debug.h
mutex.c
mutex.h
nsproxy.c
[PATCH] nsproxy cloning error path fix
2006-10-02 07:57:22 -07:00
panic.c
[PATCH] x86: Clean up x86 NMI sysctls
2006-09-30 01:47:55 +02:00
params.c
[PATCH] module_subsys: initialize earlier
2006-09-29 09:18:08 -07:00
pid.c
[PATCH] introduce get_task_pid() to fix unsafe get_pid()
2006-10-02 07:57:25 -07:00
posix-cpu-timers.c
[PATCH] posix-timers: Fix the flags handling in posix_cpu_nsleep()
2006-09-29 09:18:15 -07:00
posix-timers.c
fix file specification in comments
2006-10-03 23:01:26 +02:00
printk.c
[PATCH] lockdep: fix printk recursion logic
2006-10-11 11:14:24 -07:00
profile.c
[PATCH] bitmap: parse input from kernel and user buffers
2006-10-11 11:14:22 -07:00
ptrace.c
[PATCH] pidspace: is_init()
2006-09-29 09:18:12 -07:00
rcupdate.c
[PATCH] rcu: simplify/improve batch tuning
2006-10-04 07:55:31 -07:00
rcutorture.c
[PATCH] rcu: add sched torture type to rcutorture
2006-10-04 07:55:31 -07:00
relay.c
[PATCH] make kernel/relay.c __user-clean
2006-10-10 15:37:22 -07:00
resource.c
[PATCH] kernel-doc for kernel/resource.c
2006-10-03 08:03:41 -07:00
rtmutex-debug.c
Remove all inclusions of <linux/config.h>
2006-10-04 03:38:54 -04:00
rtmutex-debug.h
rtmutex-tester.c
Remove all inclusions of <linux/config.h>
2006-10-04 03:38:54 -04:00
rtmutex.c
[PATCH] clean up and remove some extra spinlocks from rtmutex
2006-09-29 09:18:09 -07:00
rtmutex.h
rtmutex_common.h
rwsem.c
sched.c
[PATCH] sched: likely profiling
2006-10-11 11:14:22 -07:00
seccomp.c
signal.c
[PATCH] usb: fixup usb so it uses struct pid
2006-10-02 07:57:15 -07:00
softirq.c
[PATCH] check return value of cpu_callback
2006-09-29 09:18:14 -07:00
softlockup.c
[PATCH] check return value of cpu_callback
2006-09-29 09:18:14 -07:00
spinlock.c
[PATCH] Directed yield: cpu_relax variants for spinlocks and rw-locks
2006-10-01 00:39:21 -07:00
srcu.c
[PATCH] SRCU: report out-of-memory errors
2006-10-04 07:55:30 -07:00
stacktrace.c
stop_machine.c
[PATCH] stop_machine.c copyright
2006-09-29 09:18:24 -07:00
sys.c
[PATCH] SRCU: report out-of-memory errors
2006-10-04 07:55:30 -07:00
sys_ni.c
[PATCH] fix epoll_pwait when EPOLL=n
2006-10-16 09:14:05 -07:00
sysctl.c
[PATCH] replace cad_pid by a struct pid
2006-10-02 07:57:25 -07:00
taskstats.c
[PATCH] csa: Extended system accounting over taskstats
2006-10-01 00:39:29 -07:00
time.c
[PATCH] NTP: Move all the NTP related code to ntp.c
2006-10-01 00:39:26 -07:00
timer.c
[PATCH] kill wall_jiffies
2006-10-01 00:39:27 -07:00
tsacct.c
[PATCH] csa accounting taskstats update
2006-10-01 00:39:29 -07:00
uid16.c
unwind.c
[PATCH] unwind: fix unused variable warning when !CONFIG_MODULES
2006-09-29 09:18:11 -07:00
user.c
utsname.c
[PATCH] namespaces: utsname: implement CLONE_NEWUTS flag
2006-10-02 07:57:22 -07:00
wait.c
workqueue.c
[PATCH] mm: kevent threads: use MPOL_DEFAULT
2006-10-11 11:14:19 -07:00