summaryrefslogtreecommitdiff
path: root/target/linux/ifxmips/patches-2.6.28/200-genirq_fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/ifxmips/patches-2.6.28/200-genirq_fix.patch')
-rw-r--r--target/linux/ifxmips/patches-2.6.28/200-genirq_fix.patch12
1 files changed, 12 insertions, 0 deletions
diff --git a/target/linux/ifxmips/patches-2.6.28/200-genirq_fix.patch b/target/linux/ifxmips/patches-2.6.28/200-genirq_fix.patch
new file mode 100644
index 0000000..2050d1f
--- /dev/null
+++ b/target/linux/ifxmips/patches-2.6.28/200-genirq_fix.patch
@@ -0,0 +1,12 @@
+--- a/kernel/irq/chip.c
++++ b/kernel/irq/chip.c
+@@ -524,6 +524,9 @@ handle_percpu_irq(unsigned int irq, stru
+
+ kstat_incr_irqs_this_cpu(irq, desc);
+
++ if (unlikely(!desc->action || (desc->status & IRQ_DISABLED)))
++ return;
++
+ if (desc->chip->ack)
+ desc->chip->ack(irq);
+