]> xenbits.xensource.com Git - people/julieng/xen-unstable.git/commit
x86: fixup IRQs when CPUs go down during shutdown
authorRoss Lagerwall <ross.lagerwall@citrix.com>
Thu, 10 Dec 2015 12:14:53 +0000 (13:14 +0100)
committerJan Beulich <jbeulich@suse.com>
Thu, 10 Dec 2015 12:14:53 +0000 (13:14 +0100)
commite509b8e09c00f42348f176c0d88528f53d07ab66
treeff6f4526e0518b0747b0f2717e5255c2ac7bf1d2
parente78c98f727660643ac1a4a1f3788bea8019ab5a4
x86: fixup IRQs when CPUs go down during shutdown

Commit fc0c3fa2ad5c ("x86/IO-APIC: fix setup of Xen internally used IRQs
(take 2)") introduced a regression on some hardware where Xen would hang
during shutdown, repeating the following message:
APIC error on CPU0: 08(08), Receive accept error

This appears to be because an interrupt (in this case from the serial
console) destined for a CPU other than the boot CPU is left unhandled so
an APIC error on CPU 0 is generated instead.

To fix this, before taking down the non-boot CPUs, call fixup_irqs()
with a CPU mask of only the boot CPU to reset the IRQ affinities
correctly.

Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/irq.c
xen/arch/x86/smp.c
xen/arch/x86/smpboot.c
xen/include/asm-x86/irq.h