Commit 6af7faf6 authored by Thomas Gleixner's avatar Thomas Gleixner

x86: Use entering[_ack]_irq() instead of open coding it

Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent 486ca539
...@@ -542,9 +542,7 @@ asmlinkage __visible void smp_irq_move_cleanup_interrupt(void) ...@@ -542,9 +542,7 @@ asmlinkage __visible void smp_irq_move_cleanup_interrupt(void)
{ {
unsigned vector, me; unsigned vector, me;
ack_APIC_irq(); entering_ack_irq();
irq_enter();
exit_idle();
me = smp_processor_id(); me = smp_processor_id();
for (vector = FIRST_EXTERNAL_VECTOR; vector < NR_VECTORS; vector++) { for (vector = FIRST_EXTERNAL_VECTOR; vector < NR_VECTORS; vector++) {
...@@ -596,7 +594,7 @@ asmlinkage __visible void smp_irq_move_cleanup_interrupt(void) ...@@ -596,7 +594,7 @@ asmlinkage __visible void smp_irq_move_cleanup_interrupt(void)
raw_spin_unlock(&desc->lock); raw_spin_unlock(&desc->lock);
} }
irq_exit(); exiting_irq();
} }
static void __irq_complete_move(struct irq_cfg *cfg, unsigned vector) static void __irq_complete_move(struct irq_cfg *cfg, unsigned vector)
......
...@@ -39,14 +39,12 @@ void hyperv_vector_handler(struct pt_regs *regs) ...@@ -39,14 +39,12 @@ void hyperv_vector_handler(struct pt_regs *regs)
{ {
struct pt_regs *old_regs = set_irq_regs(regs); struct pt_regs *old_regs = set_irq_regs(regs);
irq_enter(); entering_irq();
exit_idle();
inc_irq_stat(irq_hv_callback_count); inc_irq_stat(irq_hv_callback_count);
if (vmbus_handler) if (vmbus_handler)
vmbus_handler(); vmbus_handler();
irq_exit(); exiting_irq();
set_irq_regs(old_regs); set_irq_regs(old_regs);
} }
......
...@@ -198,8 +198,7 @@ __visible unsigned int __irq_entry do_IRQ(struct pt_regs *regs) ...@@ -198,8 +198,7 @@ __visible unsigned int __irq_entry do_IRQ(struct pt_regs *regs)
unsigned vector = ~regs->orig_ax; unsigned vector = ~regs->orig_ax;
unsigned irq; unsigned irq;
irq_enter(); entering_irq();
exit_idle();
irq = __this_cpu_read(vector_irq[vector]); irq = __this_cpu_read(vector_irq[vector]);
...@@ -215,7 +214,7 @@ __visible unsigned int __irq_entry do_IRQ(struct pt_regs *regs) ...@@ -215,7 +214,7 @@ __visible unsigned int __irq_entry do_IRQ(struct pt_regs *regs)
} }
} }
irq_exit(); exiting_irq();
set_irq_regs(old_regs); set_irq_regs(old_regs);
return 1; return 1;
...@@ -250,16 +249,9 @@ __visible void smp_kvm_posted_intr_ipi(struct pt_regs *regs) ...@@ -250,16 +249,9 @@ __visible void smp_kvm_posted_intr_ipi(struct pt_regs *regs)
{ {
struct pt_regs *old_regs = set_irq_regs(regs); struct pt_regs *old_regs = set_irq_regs(regs);
ack_APIC_irq(); entering_ack_irq();
irq_enter();
exit_idle();
inc_irq_stat(kvm_posted_intr_ipis); inc_irq_stat(kvm_posted_intr_ipis);
exiting_irq();
irq_exit();
set_irq_regs(old_regs); set_irq_regs(old_regs);
} }
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment