x86/apic: Mask IOAPIC entries when disabling the local APIC
[sfrench/cifs-2.6.git] / arch / x86 / kernel / apic / apic.c
index 4b0f9117e1cd8ce68f1f7514e5f8584f327f23a2..5f973fed3c9ff21ba96692cd6d6c1d454c16acf4 100644 (file)
@@ -2639,6 +2639,13 @@ static int lapic_suspend(void)
 #endif
 
        local_irq_save(flags);
+
+       /*
+        * Mask IOAPIC before disabling the local APIC to prevent stale IRR
+        * entries on some implementations.
+        */
+       mask_ioapic_entries();
+
        disable_local_APIC();
 
        irq_remapping_disable();