diff options
Diffstat (limited to 'arch/x86/include/asm/apic.h')
-rw-r--r-- | arch/x86/include/asm/apic.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/x86/include/asm/apic.h b/arch/x86/include/asm/apic.h index 124357773ffa..f5aaf6c83222 100644 --- a/arch/x86/include/asm/apic.h +++ b/arch/x86/include/asm/apic.h | |||
@@ -650,8 +650,8 @@ static inline void entering_ack_irq(void) | |||
650 | 650 | ||
651 | static inline void ipi_entering_ack_irq(void) | 651 | static inline void ipi_entering_ack_irq(void) |
652 | { | 652 | { |
653 | ack_APIC_irq(); | ||
654 | irq_enter(); | 653 | irq_enter(); |
654 | ack_APIC_irq(); | ||
655 | } | 655 | } |
656 | 656 | ||
657 | static inline void exiting_irq(void) | 657 | static inline void exiting_irq(void) |
@@ -661,9 +661,8 @@ static inline void exiting_irq(void) | |||
661 | 661 | ||
662 | static inline void exiting_ack_irq(void) | 662 | static inline void exiting_ack_irq(void) |
663 | { | 663 | { |
664 | irq_exit(); | ||
665 | /* Ack only at the end to avoid potential reentry */ | ||
666 | ack_APIC_irq(); | 664 | ack_APIC_irq(); |
665 | irq_exit(); | ||
667 | } | 666 | } |
668 | 667 | ||
669 | extern void ioapic_zap_locks(void); | 668 | extern void ioapic_zap_locks(void); |