linux/include
Ashok Raj 884d9e40b4 [PATCH] x86_64: Dont use broadcast shortcut to make it cpu hotplug safe.
Broadcast IPI's provide un-expected behaviour for cpu hotplug.  CPU's in
offline state also end up receiving the IPI.  Once the cpus become online they
receive these stale IPI's which are bad and introduce unexpected behaviour.

This is easily avoided by not sending a broadcast and addressing just the
CPU's in online map.  Doing prelim cycle counts it appears there is no big
overhead and numbers seem around 0x3000-0x3900 on an average on x86 and x86_64
systems with CPUS running 3G, both for broadcast and mask version of the
API's.

The shortcuts are useful only for flat mode (where the perf shows no
degradation), and in cluster mode, its unicast anyway.  Its simpler to just
not use broadcast anymore.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Acked-by: Zwane Mwaikambo <zwane@arm.linux.org.uk>
Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-25 16:24:31 -07:00
..
acpi Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
asm-alpha [PATCH] remove non-DISCONTIG use of pgdat->node_mem_map 2005-06-23 09:45:00 -07:00
asm-arm [PATCH] ARM: Generic Dynamic Tick Timer support for ARM, take 4 2005-06-25 19:39:45 +01:00
asm-arm26 [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-cris [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-frv [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-generic [PATCH] adjust per_cpu definition in non-SMP case 2005-06-23 09:45:28 -07:00
asm-h8300 [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-i386 [PATCH] make smp_prepare_cpu to a weak function 2005-06-25 16:24:30 -07:00
asm-ia64 [IA64] Fix pfn_to_nid() so the kernel compiles again for !CONFIG_DISCONTIGMEM. 2005-06-23 14:52:51 -07:00
asm-m32r [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-m68k [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-m68knommu [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-mips [PATCH] mips: add MIPS-specific support for flatmem/discontigmem 2005-06-25 16:24:25 -07:00
asm-parisc [PATCH] compat: introduce compat_time_t 2005-06-23 09:45:32 -07:00
asm-ppc [PATCH] ppc32: Remove FSL OCP support 2005-06-25 16:24:27 -07:00
asm-ppc64 Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/paulus/ppc64-2.6 2005-06-23 09:49:55 -07:00
asm-s390 [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-sh [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-sh64 [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-sparc [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-sparc64 [SPARC64]: Report any user access faults in termios accessors. 2005-06-24 20:11:03 -07:00
asm-um [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-v850 [PATCH] streamline preempt_count type across archs 2005-06-23 09:45:19 -07:00
asm-x86_64 [PATCH] x86_64: Dont use broadcast shortcut to make it cpu hotplug safe. 2005-06-25 16:24:31 -07:00
asm-xtensa [PATCH] xtensa: Architecture support for Tensilica Xtensa Part 8 2005-06-24 00:05:22 -07:00
linux [PATCH] x86_64: Change init sections for CPU hotplug support 2005-06-25 16:24:30 -07:00
math-emu Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
media [PATCH] v4l: update for SAA7134 cards 2005-06-24 00:06:39 -07:00
mtd Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
net Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2005-06-24 00:31:46 -07:00
pcmcia [PATCH] yenta TI: turn off interrupts during card power-on #2 2005-06-23 09:45:31 -07:00
rxrpc Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
scsi [PATCH] I2O: Adaptec specific SG_IO access, firmware access through sysfs and 2400A workaround 2005-06-24 00:05:28 -07:00
sound [PATCH] create a kstrdup library function 2005-06-23 09:45:18 -07:00
video [PATCH] Clean-up and bug fix for tdfxfb framebuffer size detection 2005-05-01 08:59:25 -07:00