]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
genirq: Don't overwrite interrupt thread flags on setup
authorThomas Gleixner <tglx@linutronix.de>
Fri, 12 Dec 2025 04:01:04 +0000 (13:01 +0900)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 13 Dec 2025 01:29:33 +0000 (10:29 +0900)
Chris reported that the recent affinity management changes result in
overwriting the already initialized thread flags.

Use set_bit() to set the affinity bit instead of assigning the bit value to
the flags.

Fixes: 801afdfbfcd9 ("genirq: Fix interrupt threads affinity vs. cpuset isolated partitions")
Reported-by: Chris Mason <clm@meta.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Frederic Weisbecker <frederic@kernel.org>
Link: https://patch.msgid.link/87ecp0e4cf.ffs@tglx
Closes: https://lore.kernel.org/all/20251212014848.3509622-1-clm@meta.com
kernel/irq/manage.c

index 8b1b4c8a4f54c56be312f554a21153ae652dc78f..349ae7979da0e3f439bb0c479f89cb9054c6b784 100644 (file)
@@ -1414,7 +1414,7 @@ setup_irq_thread(struct irqaction *new, unsigned int irq, bool secondary)
         * Ensure the thread adjusts the affinity once it reaches the
         * thread function.
         */
-       new->thread_flags = BIT(IRQTF_AFFINITY);
+       set_bit(IRQTF_AFFINITY, &new->thread_flags);
 
        return 0;
 }