diff mbox series

x86/xen: Remove redundant irq_enter/exit() invocations

Message ID 877deicqqy.ffs@tglx (mailing list archive)
State Accepted
Commit 247c8433f3defc99484f0e8223e6924eaf5ae8f1
Headers show
Series x86/xen: Remove redundant irq_enter/exit() invocations | expand

Commit Message

Thomas Gleixner Oct. 12, 2021, 1:33 p.m. UTC
All these handlers are regular device interrupt handlers, so they already
went through the proper entry code which handles this correctly.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Juergen Gross <jgross@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Cc: x86@kernel.org
Cc: xen-devel@lists.xenproject.org
---
 arch/x86/xen/smp.c    |    4 ----
 arch/x86/xen/smp_pv.c |    2 --
 2 files changed, 6 deletions(-)

Comments

Jürgen Groß Oct. 12, 2021, 2:25 p.m. UTC | #1
On 12.10.21 15:33, Thomas Gleixner wrote:
> All these handlers are regular device interrupt handlers, so they already
> went through the proper entry code which handles this correctly.
> 
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
> Cc: Juergen Gross <jgross@suse.com>
> Cc: Stefano Stabellini <sstabellini@kernel.org>
> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
> Cc: x86@kernel.org
> Cc: xen-devel@lists.xenproject.org

Reviewed-by: Juergen Gross <jgross@suse.com>


Juergen
Boris Ostrovsky Oct. 27, 2021, 1:19 p.m. UTC | #2
On 10/12/21 10:25 AM, Juergen Gross wrote:
> On 12.10.21 15:33, Thomas Gleixner wrote:
>> All these handlers are regular device interrupt handlers, so they already
>> went through the proper entry code which handles this correctly.
>>
>> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
>> Cc: Juergen Gross <jgross@suse.com>
>> Cc: Stefano Stabellini <sstabellini@kernel.org>
>> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
>> Cc: x86@kernel.org
>> Cc: xen-devel@lists.xenproject.org
>
> Reviewed-by: Juergen Gross <jgross@suse.com>
>


Applied to for-linus-5.16


-boris
diff mbox series

Patch

--- a/arch/x86/xen/smp.c
+++ b/arch/x86/xen/smp.c
@@ -268,20 +268,16 @@  void xen_send_IPI_allbutself(int vector)
 
 static irqreturn_t xen_call_function_interrupt(int irq, void *dev_id)
 {
-	irq_enter();
 	generic_smp_call_function_interrupt();
 	inc_irq_stat(irq_call_count);
-	irq_exit();
 
 	return IRQ_HANDLED;
 }
 
 static irqreturn_t xen_call_function_single_interrupt(int irq, void *dev_id)
 {
-	irq_enter();
 	generic_smp_call_function_single_interrupt();
 	inc_irq_stat(irq_call_count);
-	irq_exit();
 
 	return IRQ_HANDLED;
 }
--- a/arch/x86/xen/smp_pv.c
+++ b/arch/x86/xen/smp_pv.c
@@ -458,10 +458,8 @@  static void xen_pv_stop_other_cpus(int w
 
 static irqreturn_t xen_irq_work_interrupt(int irq, void *dev_id)
 {
-	irq_enter();
 	irq_work_run();
 	inc_irq_stat(apic_irq_work_irqs);
-	irq_exit();
 
 	return IRQ_HANDLED;
 }