kernel-ark/include
Eric W. Biederman 3d483f4757 [PATCH] Fix sync_tsc hang
sync_tsc was using smp_call_function to ask the boot processor to report
it's tsc value.  smp_call_function performs an IPI_send_allbutself which is
a broadcast ipi.  There is a window during processor startup during which
the target cpu has started and before it has initialized it's interrupt
vectors so it can properly process an interrupt.  Receveing an interrupt
during that window will triple fault the cpu and do other nasty things.

Why cli does not protect us from that is beyond me.

The simple fix is to match ia64 and provide a smp_call_function_single.
Which avoids the broadcast and is more efficient.

This certainly fixes the problem of getting stuck on boot which was
very easy to trigger on my SMP Hyperthreaded Xeon, and I think
it fixes it for the right reasons.

Minor changes by AK

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-07-29 15:01:13 -07:00
..
acpi [ACPI] merge acpi-2.6.12 branch into latest Linux 2.6.13-rc... 2005-07-12 17:21:56 -04:00
asm-alpha Revert broken "statement with no effect" warning fix 2005-07-28 10:34:47 -07:00
asm-arm [ARM SMP] Fix another ARMv6 bitop problem 2005-07-28 20:36:26 +01:00
asm-arm26 [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-cris [PATCH] CRIS update: new subarchitecture v32 2005-07-27 16:26:01 -07:00
asm-frv
asm-generic [PATCH] x86_64: Some cleanup in setup64.c 2005-07-28 21:45:58 -07:00
asm-h8300
asm-i386 x86: fix new find_first_bit() 2005-07-29 11:01:22 -04:00
asm-ia64
asm-m32r
asm-m68k
asm-m68knommu
asm-mips
asm-parisc
asm-ppc [PATCH] ppc32: fix dma_map_page() to use page_to_bus() 2005-07-27 16:25:56 -07:00
asm-ppc64 [PATCH] ppc64: remove another fixed address constraint 2005-07-27 16:25:58 -07:00
asm-s390 [PATCH] s390: atomic64 inline functions 2005-07-27 16:26:04 -07:00
asm-sh
asm-sh64
asm-sparc
asm-sparc64
asm-um [PATCH] uml: vm86 compile fix 2005-07-28 21:46:03 -07:00
asm-v850 [PATCH] v850: Define L1_CACHE_SHIFT and L1_CACHE_SHIFT_MAX 2005-07-27 16:26:03 -07:00
asm-x86_64 [PATCH] Fix sync_tsc hang 2005-07-29 15:01:13 -07:00
asm-xtensa [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
linux [PATCH] PCI: fix up errors after dma bursting patch and CONFIG_PCI=n -- bug? 2005-07-29 13:12:52 -07:00
math-emu Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
media [PATCH] drivers/media/video/tveeprom.c: possible cleanups 2005-07-27 16:26:15 -07:00
mtd
net
pcmcia [PATCH] pcmcia: fix pcmcia-cs compilation 2005-07-12 16:00:59 -07:00
rxrpc
scsi
sound [ALSA] version 1.0.9b 2005-07-28 15:50:42 +02:00
video