linux/arch
Suresh Siddha a5e74b8419 x86: Force irq complete move during cpu offline
When a cpu goes offline, fixup_irqs() try to move irq's
currently destined to the offline cpu to a new cpu. But this
attempt will fail if the irq is recently moved to this cpu and
the irq still hasn't arrived at this cpu (for non intr-remapping
platforms this is when we free the vector allocation at the
previous destination) that is about to go offline.

This will endup with the interrupt subsystem still pointing the
irq to the offline cpu, causing that irq to not work any more.

Fix this by forcing the irq to complete its move (its been a
long time we moved the irq to this cpu which we are offlining
now) and then move this irq to a new cpu before this cpu goes
offline.

Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Acked-by: Gary Hade <garyhade@us.ibm.com>
Cc: Eric W. Biederman <ebiederm@xmission.com>
LKML-Reference: <20091026230001.848830905@sbs-t61.sc.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-11-02 15:56:36 +01:00
..
alpha alpha: Fix duplicate <asm/thread_info.h> include 2009-09-27 14:46:05 -07:00
arm ARM: force dcache flush if dcache_dirty bit set 2009-10-12 17:52:26 +01:00
avr32 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next 2009-09-23 15:37:02 -07:00
blackfin headers: remove sched.h from interrupt.h 2009-10-11 11:20:58 -07:00
cris const: constify remaining file_operations 2009-10-01 16:11:11 -07:00
frv FRV: Flash mappings for the MB93090-MB00 motherboard 2009-09-24 17:18:38 -07:00
h8300 h8300: Cleanup linker script using new linker script macros. 2009-09-24 17:16:22 -07:00
ia64 const: mark struct vm_struct_operations 2009-09-27 11:39:25 -07:00
m32r headers: remove sched.h from interrupt.h 2009-10-11 11:20:58 -07:00
m68k revert "m68k: convert to asm-generic/hardirq.h" 2009-10-01 16:11:11 -07:00
m68knommu m68knommu: fix rename of pt_regs offset defines breakage 2009-09-30 10:06:07 +10:00
microblaze microblaze: Clear sticky FSR register after saving it to func parametr 2009-10-05 11:37:47 +02:00
mips MIPS: Avoid spurious make includecheck message 2009-09-30 21:47:02 +02:00
mn10300 mn10300: fix kernel build failures when using gcc-4.x 2009-10-01 16:11:12 -07:00
parisc parisc: Fix linker script breakage. 2009-09-28 00:25:07 -04:00
powerpc const: constify remaining file_operations 2009-10-01 16:11:11 -07:00
s390 [S390] Add EX_TABLE for addressing exception in usercopy functions. 2009-10-06 10:35:10 +02:00
score Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next 2009-09-23 15:37:02 -07:00
sh sh: Don't allocate smaller sized mappings on every iteration 2009-10-09 11:26:35 +09:00
sparc Merge branch 'sparc-perf-events-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-10-08 12:05:50 -07:00
um headers: remove sched.h from interrupt.h 2009-10-11 11:20:58 -07:00
x86 x86: Force irq complete move during cpu offline 2009-11-02 15:56:36 +01:00
xtensa headers: remove sched.h from interrupt.h 2009-10-11 11:20:58 -07:00
.gitignore
Kconfig oprofile: fix oprofile regression: select RING_BUFFER_ALLOW_SWAP 2009-09-17 15:53:42 -04:00