]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
genirq: Allow NULL affinity for setup_percpu_irq()
authorMarc Zyngier <maz@kernel.org>
Fri, 5 Dec 2025 09:18:14 +0000 (09:18 +0000)
committerThomas Gleixner <tglx@linutronix.de>
Wed, 10 Dec 2025 00:47:33 +0000 (09:47 +0900)
setup_percpu_irq() was forgotten when the percpu_devid infrastructure was
updated to deal with CPU affinities.

In order to keep ignoring users of this legacy API, provide sensible
defaults by setting the affinity to cpu_online_mask if none was provided by
the caller.

Fixes: bdf4e2ac295fe ("genirq: Allow per-cpu interrupt sharing for non-overlapping affinities")
Reported-by: Daniel Thompson <danielt@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://patch.msgid.link/20251205091814.3944205-1-maz@kernel.org
Closes: https://lore.kernel.org/r/aTFozefMQRg7lYxh@aspen.lan
kernel/irq/manage.c

index 0bb29316b4362cecab488dd85600d8eefe7ac8b1..8b1b4c8a4f54c56be312f554a21153ae652dc78f 100644 (file)
@@ -2470,6 +2470,9 @@ int setup_percpu_irq(unsigned int irq, struct irqaction *act)
        if (retval < 0)
                return retval;
 
+       if (!act->affinity)
+               act->affinity = cpu_online_mask;
+
        retval = __setup_irq(irq, desc, act);
 
        if (retval)