[tip: irq/urgent] genirq: Allow NULL affinity for setup_percpu_irq()

tip-bot2 for Marc Zyngier posted 1 patch 1 week, 1 day ago
kernel/irq/manage.c | 3 +++
1 file changed, 3 insertions(+)
[tip: irq/urgent] genirq: Allow NULL affinity for setup_percpu_irq()
Posted by tip-bot2 for Marc Zyngier 1 week, 1 day ago
The following commit has been merged into the irq/urgent branch of tip:

Commit-ID:     89acaa5537a29c742d7a6ed7241fc4cf5e2ef818
Gitweb:        https://git.kernel.org/tip/89acaa5537a29c742d7a6ed7241fc4cf5e2ef818
Author:        Marc Zyngier <maz@kernel.org>
AuthorDate:    Fri, 05 Dec 2025 09:18:14 
Committer:     Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Wed, 10 Dec 2025 09:47:33 +09:00

genirq: Allow NULL affinity for setup_percpu_irq()

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 | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 0bb2931..8b1b4c8 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -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)