[source] mvebu: backport a kernel irq fix for setting IRQ affinity

LEDE Commits lede-commits at lists.infradead.org
Wed Nov 15 09:49:23 PST 2017


nbd pushed a commit to source.git, branch master:
https://git.lede-project.org/31691f9649b096eac387137de2dbf07f767508f7

commit 31691f9649b096eac387137de2dbf07f767508f7
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Tue Nov 14 11:06:41 2017 +0100

    mvebu: backport a kernel irq fix for setting IRQ affinity
    
    The IRQ controller can only set the affinity to a single CPU. Update the
    mask in the controller data.
    
    Suggested-by: Sebastian Gottschall <s.gottschall at dd-wrt.com>
    Signed-off-by: Felix Fietkau <nbd at nbd.name>
---
 .../patches-4.9/130-irqchip-armada-xp-backport.patch    | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/target/linux/mvebu/patches-4.9/130-irqchip-armada-xp-backport.patch b/target/linux/mvebu/patches-4.9/130-irqchip-armada-xp-backport.patch
new file mode 100644
index 0000000..14cbb7b
--- /dev/null
+++ b/target/linux/mvebu/patches-4.9/130-irqchip-armada-xp-backport.patch
@@ -0,0 +1,17 @@
+Backport a change that updates the effective affinity mask. The Armada IRQ
+controller only supports setting the affinity to a single CPU, and the IRQ
+subsystem needs to know about that.
+
+Signed-off-by: Felix Fietkau <nbd at nbd.name>
+---
+--- a/drivers/irqchip/irq-armada-370-xp.c
++++ b/drivers/irqchip/irq-armada-370-xp.c
+@@ -251,6 +251,8 @@ static int armada_xp_set_affinity(struct
+ 	writel(reg, main_int_base + ARMADA_370_XP_INT_SOURCE_CTL(hwirq));
+ 	raw_spin_unlock(&irq_controller_lock);
+ 
++	cpumask_copy(irq_data_get_affinity_mask(d), cpumask_of(cpu));
++
+ 	return IRQ_SET_MASK_OK;
+ }
+ #endif



More information about the lede-commits mailing list