Loading arch/x86/kernel/apic_32.c +6 −3 Original line number Diff line number Diff line Loading @@ -838,10 +838,13 @@ void lapic_shutdown(void) local_irq_save(flags); if (enabled_via_apicbase) disable_local_APIC(); else #ifdef CONFIG_X86_32 if (!enabled_via_apicbase) clear_local_APIC(); else #endif disable_local_APIC(); local_irq_restore(flags); } Loading arch/x86/kernel/apic_64.c +13 −1 Original line number Diff line number Diff line Loading @@ -707,6 +707,12 @@ void disable_local_APIC(void) #endif } /* * If Linux enabled the LAPIC against the BIOS default disable it down before * re-entering the BIOS on shutdown. Otherwise the BIOS may get confused and * not power-off. Additionally clear all LVT entries before disable_local_APIC * for the case where Linux didn't enable the LAPIC. */ void lapic_shutdown(void) { unsigned long flags; Loading @@ -716,8 +722,14 @@ void lapic_shutdown(void) local_irq_save(flags); #ifdef CONFIG_X86_32 if (!enabled_via_apicbase) clear_local_APIC(); else #endif disable_local_APIC(); local_irq_restore(flags); } Loading Loading
arch/x86/kernel/apic_32.c +6 −3 Original line number Diff line number Diff line Loading @@ -838,10 +838,13 @@ void lapic_shutdown(void) local_irq_save(flags); if (enabled_via_apicbase) disable_local_APIC(); else #ifdef CONFIG_X86_32 if (!enabled_via_apicbase) clear_local_APIC(); else #endif disable_local_APIC(); local_irq_restore(flags); } Loading
arch/x86/kernel/apic_64.c +13 −1 Original line number Diff line number Diff line Loading @@ -707,6 +707,12 @@ void disable_local_APIC(void) #endif } /* * If Linux enabled the LAPIC against the BIOS default disable it down before * re-entering the BIOS on shutdown. Otherwise the BIOS may get confused and * not power-off. Additionally clear all LVT entries before disable_local_APIC * for the case where Linux didn't enable the LAPIC. */ void lapic_shutdown(void) { unsigned long flags; Loading @@ -716,8 +722,14 @@ void lapic_shutdown(void) local_irq_save(flags); #ifdef CONFIG_X86_32 if (!enabled_via_apicbase) clear_local_APIC(); else #endif disable_local_APIC(); local_irq_restore(flags); } Loading