diff options
| author | Jeff Garzik <jeff@garzik.org> | 2006-03-16 19:27:08 -0500 |
|---|---|---|
| committer | Jeff Garzik <jeff@garzik.org> | 2006-03-16 19:27:08 -0500 |
| commit | abc71c46dc0a12ab7fddc18cfe4f4aa26808c79b (patch) | |
| tree | b0c846052b994d57d58713a0cc8da30a22baaf1c /arch/i386/kernel/apic.c | |
| parent | 30dcbf29cc6d92d70fa262e79e84011fe6913bed (diff) | |
| parent | 232a347a444e687b5f8cf0f6485704db1c6024d3 (diff) | |
Merge branch 'upstream-fixes'
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 f39e09ef64ec..776c90989e06 100644 --- a/arch/i386/kernel/apic.c +++ b/arch/i386/kernel/apic.c | |||
| @@ -570,16 +570,18 @@ void __devinit setup_local_APIC(void) | |||
| 570 | */ | 570 | */ |
| 571 | void lapic_shutdown(void) | 571 | void lapic_shutdown(void) |
| 572 | { | 572 | { |
| 573 | unsigned long flags; | ||
| 574 | |||
| 573 | if (!cpu_has_apic) | 575 | if (!cpu_has_apic) |
| 574 | return; | 576 | return; |
| 575 | 577 | ||
| 576 | local_irq_disable(); | 578 | local_irq_save(flags); |
| 577 | clear_local_APIC(); | 579 | clear_local_APIC(); |
| 578 | 580 | ||
| 579 | if (enabled_via_apicbase) | 581 | if (enabled_via_apicbase) |
| 580 | disable_local_APIC(); | 582 | disable_local_APIC(); |
| 581 | 583 | ||
| 582 | local_irq_enable(); | 584 | local_irq_restore(flags); |
| 583 | } | 585 | } |
| 584 | 586 | ||
| 585 | #ifdef CONFIG_PM | 587 | #ifdef CONFIG_PM |
