diff options
Diffstat (limited to 'arch/i386/kernel/apic.c')
| -rw-r--r-- | arch/i386/kernel/apic.c | 6 | 
1 files changed, 4 insertions, 2 deletions
| diff --git a/arch/i386/kernel/apic.c b/arch/i386/kernel/apic.c index f39e09ef64e..776c90989e0 100644 --- a/arch/i386/kernel/apic.c +++ b/arch/i386/kernel/apic.c @@ -570,16 +570,18 @@ void __devinit setup_local_APIC(void)   */  void lapic_shutdown(void)  { +	unsigned long flags; +  	if (!cpu_has_apic)  		return; -	local_irq_disable(); +	local_irq_save(flags);  	clear_local_APIC();  	if (enabled_via_apicbase)  		disable_local_APIC(); -	local_irq_enable(); +	local_irq_restore(flags);  }  #ifdef CONFIG_PM | 
