From: Thomas Gleixner Date: Tue, 29 Apr 2025 06:55:47 +0000 (+0200) Subject: genirq/manage: Rework disable_percpu_irq() X-Git-Tag: v6.16-rc1~189^2~15 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8e3f672b1949d58462e23abdc41c039a82e685fd;p=thirdparty%2Fkernel%2Flinux.git genirq/manage: Rework disable_percpu_irq() Use the new guards to get and lock the interrupt descriptor and tidy up the code. No functional change. Signed-off-by: Thomas Gleixner Acked-by: Peter Zijlstra (Intel) Link: https://lore.kernel.org/all/20250429065422.435932527@linutronix.de --- diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index 3a491c7c06796..a57e95254fdbb 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c @@ -2330,15 +2330,8 @@ EXPORT_SYMBOL_GPL(irq_percpu_is_enabled); void disable_percpu_irq(unsigned int irq) { - unsigned int cpu = smp_processor_id(); - unsigned long flags; - struct irq_desc *desc = irq_get_desc_lock(irq, &flags, IRQ_GET_DESC_CHECK_PERCPU); - - if (!desc) - return; - - irq_percpu_disable(desc, cpu); - irq_put_desc_unlock(desc, flags); + scoped_irqdesc_get_and_lock(irq, IRQ_GET_DESC_CHECK_PERCPU) + irq_percpu_disable(scoped_irqdesc, smp_processor_id()); } EXPORT_SYMBOL_GPL(disable_percpu_irq);