diff options
Diffstat (limited to 'arch/x86/kernel')
| -rw-r--r-- | arch/x86/kernel/apic.c | 6 | ||||
| -rw-r--r-- | arch/x86/kernel/io_apic.c | 3 |
2 files changed, 1 insertions, 8 deletions
diff --git a/arch/x86/kernel/apic.c b/arch/x86/kernel/apic.c index 16f94879b525..0fd083713f62 100644 --- a/arch/x86/kernel/apic.c +++ b/arch/x86/kernel/apic.c | |||
| @@ -814,9 +814,7 @@ void smp_apic_timer_interrupt(struct pt_regs *regs) | |||
| 814 | * Besides, if we don't timer interrupts ignore the global | 814 | * Besides, if we don't timer interrupts ignore the global |
| 815 | * interrupt lock, which is the WrongThing (tm) to do. | 815 | * interrupt lock, which is the WrongThing (tm) to do. |
| 816 | */ | 816 | */ |
| 817 | #ifdef CONFIG_X86_64 | ||
| 818 | exit_idle(); | 817 | exit_idle(); |
| 819 | #endif | ||
| 820 | irq_enter(); | 818 | irq_enter(); |
| 821 | local_apic_timer_interrupt(); | 819 | local_apic_timer_interrupt(); |
| 822 | irq_exit(); | 820 | irq_exit(); |
| @@ -1682,9 +1680,7 @@ void smp_spurious_interrupt(struct pt_regs *regs) | |||
| 1682 | { | 1680 | { |
| 1683 | u32 v; | 1681 | u32 v; |
| 1684 | 1682 | ||
| 1685 | #ifdef CONFIG_X86_64 | ||
| 1686 | exit_idle(); | 1683 | exit_idle(); |
| 1687 | #endif | ||
| 1688 | irq_enter(); | 1684 | irq_enter(); |
| 1689 | /* | 1685 | /* |
| 1690 | * Check if this really is a spurious interrupt and ACK it | 1686 | * Check if this really is a spurious interrupt and ACK it |
| @@ -1713,9 +1709,7 @@ void smp_error_interrupt(struct pt_regs *regs) | |||
| 1713 | { | 1709 | { |
| 1714 | u32 v, v1; | 1710 | u32 v, v1; |
| 1715 | 1711 | ||
| 1716 | #ifdef CONFIG_X86_64 | ||
| 1717 | exit_idle(); | 1712 | exit_idle(); |
| 1718 | #endif | ||
| 1719 | irq_enter(); | 1713 | irq_enter(); |
| 1720 | /* First tickle the hardware, only then report what went on. -- REW */ | 1714 | /* First tickle the hardware, only then report what went on. -- REW */ |
| 1721 | v = apic_read(APIC_ESR); | 1715 | v = apic_read(APIC_ESR); |
diff --git a/arch/x86/kernel/io_apic.c b/arch/x86/kernel/io_apic.c index 9043251210fb..679e7bbbbcd6 100644 --- a/arch/x86/kernel/io_apic.c +++ b/arch/x86/kernel/io_apic.c | |||
| @@ -2216,10 +2216,9 @@ static void set_ir_ioapic_affinity_irq(unsigned int irq, cpumask_t mask) | |||
| 2216 | asmlinkage void smp_irq_move_cleanup_interrupt(void) | 2216 | asmlinkage void smp_irq_move_cleanup_interrupt(void) |
| 2217 | { | 2217 | { |
| 2218 | unsigned vector, me; | 2218 | unsigned vector, me; |
| 2219 | |||
| 2219 | ack_APIC_irq(); | 2220 | ack_APIC_irq(); |
| 2220 | #ifdef CONFIG_X86_64 | ||
| 2221 | exit_idle(); | 2221 | exit_idle(); |
| 2222 | #endif | ||
| 2223 | irq_enter(); | 2222 | irq_enter(); |
| 2224 | 2223 | ||
| 2225 | me = smp_processor_id(); | 2224 | me = smp_processor_id(); |
