From: Ingo Molnar Date: Fri, 6 Mar 2009 15:44:14 +0000 (+0100) Subject: Merge branch 'x86/core' into tracing/textedit X-Git-Tag: v2.6.30-rc1~2^2~55^2~4 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=f0ef03985130287c6c84ebe69416cf790e6cc00e;p=linux.git Merge branch 'x86/core' into tracing/textedit Conflicts: arch/x86/Kconfig block/blktrace.c kernel/irq/handle.c Semantic conflict: kernel/trace/blktrace.c Signed-off-by: Ingo Molnar --- f0ef03985130287c6c84ebe69416cf790e6cc00e diff --cc arch/x86/Kconfig index bcc1d2a9d050,31758378bcd2..bdcee12c25ab --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@@ -34,9 -34,8 +34,9 @@@ config X8 select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_GRAPH_TRACER select HAVE_FUNCTION_TRACE_MCOUNT_TEST + select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE - select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) - select HAVE_ARCH_KGDB if !X86_VOYAGER + select HAVE_KVM + select HAVE_ARCH_KGDB select HAVE_ARCH_TRACEHOOK select HAVE_GENERIC_DMA_COHERENT if X86_32 select HAVE_EFFICIENT_UNALIGNED_ACCESS diff --cc arch/x86/kernel/cpu/intel.c index 5fff00c70de0,25c559ba8d54..1a89a2b68d15 --- a/arch/x86/kernel/cpu/intel.c +++ b/arch/x86/kernel/cpu/intel.c @@@ -65,10 -60,20 +64,22 @@@ static void __cpuinit early_init_intel( if (c->x86_power & (1 << 8)) { set_cpu_cap(c, X86_FEATURE_CONSTANT_TSC); set_cpu_cap(c, X86_FEATURE_NONSTOP_TSC); + set_cpu_cap(c, X86_FEATURE_TSC_RELIABLE); + sched_clock_stable = 1; } + /* + * There is a known erratum on Pentium III and Core Solo + * and Core Duo CPUs. + * " Page with PAT set to WC while associated MTRR is UC + * may consolidate to UC " + * Because of this erratum, it is better to stick with + * setting WC in MTRR rather than using PAT on these CPUs. + * + * Enable PAT WC only on P4, Core 2 or later CPUs. + */ + if (c->x86 == 6 && c->x86_model < 15) + clear_cpu_cap(c, X86_FEATURE_PAT); } #ifdef CONFIG_X86_32 diff --cc arch/x86/kernel/process.c index 23b328edc2b3,6afa5232dbb7..8c037051b353 --- a/arch/x86/kernel/process.c +++ b/arch/x86/kernel/process.c @@@ -8,9 -8,12 +8,12 @@@ #include #include #include -#include +#include #include #include + #include + #include + #include unsigned long idle_halt; EXPORT_SYMBOL(idle_halt); diff --cc kernel/irq/handle.c index 4709a7c870d7,f51eaee921b6..412370ab9a34 --- a/kernel/irq/handle.c +++ b/kernel/irq/handle.c @@@ -17,7 -17,7 +17,8 @@@ #include #include #include +#include + #include #include "internals.h"