aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/apic
diff options
context:
space:
mode:
authorJoerg Roedel <joro@8bytes.org>2012-09-26 06:44:34 -0400
committerJoerg Roedel <joro@8bytes.org>2013-01-28 04:48:29 -0500
commit336224ba5e4fb42a95d02ab0aa0fdff21649bb38 (patch)
treef8ddb7c1df9f34b71d284cb5c1b7a7657974c834 /arch/x86/kernel/apic
parent70733e0c7ed22177e2cfe660fa2a0e90f1f39126 (diff)
x86, apic: Mask IO-APIC and PIC unconditionally on LAPIC resume
IO-APIC and PIC use the same resume routines when IRQ remapping is enabled or disabled. So it should be safe to mask the other APICs for the IRQ-remapping-disabled case too. Signed-off-by: Joerg Roedel <joro@8bytes.org> Acked-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'arch/x86/kernel/apic')
-rw-r--r--arch/x86/kernel/apic/apic.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
index 8d741e65ff64..a5b4dce1b7ac 100644
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -2266,16 +2266,15 @@ static void lapic_resume(void)
2266 return; 2266 return;
2267 2267
2268 local_irq_save(flags); 2268 local_irq_save(flags);
2269 if (irq_remapping_enabled) { 2269
2270 /* 2270 /*
2271 * IO-APIC and PIC have their own resume routines. 2271 * IO-APIC and PIC have their own resume routines.
2272 * We just mask them here to make sure the interrupt 2272 * We just mask them here to make sure the interrupt
2273 * subsystem is completely quiet while we enable x2apic 2273 * subsystem is completely quiet while we enable x2apic
2274 * and interrupt-remapping. 2274 * and interrupt-remapping.
2275 */ 2275 */
2276 mask_ioapic_entries(); 2276 mask_ioapic_entries();
2277 legacy_pic->mask_all(); 2277 legacy_pic->mask_all();
2278 }
2279 2278
2280 if (x2apic_mode) 2279 if (x2apic_mode)
2281 enable_x2apic(); 2280 enable_x2apic();