linux/arch
Dimitri Sivanich 847d52cc4a x86: Fix sched_clock_cpu for systems with unsynchronized TSC
commit 14be1f7454 upstream.

On UV systems, the TSC is not synchronized across blades.  The
sched_clock_cpu() function is returning values that can go
backwards  (I've seen as much as 8 seconds) when switching
between cpus.

As each cpu comes up, early_init_intel() will currently set the
sched_clock_stable flag true.  When mark_tsc_unstable() runs, it
clears the flag, but this only occurs once (the first time a cpu
comes up whose TSC is not synchronized with cpu 0).  After this,
early_init_intel() will set the flag again as the next cpu comes
up.

Only set sched_clock_stable if tsc has not been marked unstable.

Signed-off-by: Dimitri Sivanich <sivanich@sgi.com>
Acked-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <20100301174815.GC8224@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2010-04-01 15:58:57 -07:00
..
alpha untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
arm ARM: Fix decompressor's kernel size estimation for ROM=y 2010-04-01 15:58:03 -07:00
avr32 untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
blackfin FDPIC: Respect PT_GNU_STACK exec protection markings when creating NOMMU stack 2010-02-09 04:50:49 -08:00
cris untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
frv FDPIC: Respect PT_GNU_STACK exec protection markings when creating NOMMU stack 2010-02-09 04:50:49 -08:00
h8300 untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
ia64 ACPI: fix "acpi=ht" boot option 2010-03-15 08:49:36 -07:00
m32r untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
m68k untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
m68knommu untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
microblaze untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
mips MIPS: Cleanup forgotten label_module_alloc in tlbex.c 2010-04-01 15:58:04 -07:00
mn10300 untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
parisc untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
powerpc powerpc: TIF_ABI_PENDING bit removal 2010-02-09 04:51:02 -08:00
s390 S390: fix single stepped svcs with TRACE_IRQFLAGS=y 2010-02-09 04:50:43 -08:00
score untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
sh sh: Fix zImage boot using fixed PMB. 2010-04-01 15:58:55 -07:00
sparc sparc64: Make prom entry spinlock NMI safe. 2010-04-01 15:58:16 -07:00
um untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
x86 x86: Fix sched_clock_cpu for systems with unsynchronized TSC 2010-04-01 15:58:57 -07:00
xtensa untangle the do_mremap() mess 2010-01-18 10:19:11 -08:00
.gitignore
Kconfig oprofile: remove tracing build dependency 2010-03-15 08:49:47 -07:00