aboutsummaryrefslogtreecommitdiff
path: root/arch/blackfin/kernel/irqchip.c
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2009-06-05 03:13:11 -0400
committerMike Frysinger <vapier@gentoo.org>2009-06-12 06:15:36 -0400
commitbf664c0a3a42683b78d74aca2d7cfb6ccc2aa2c3 (patch)
treeb1d5c08b75cd69e4061b8a5d1cbeab80bf0364e2 /arch/blackfin/kernel/irqchip.c
parentce0bf52dd3f9d980889190bc6097f1756b71eb8c (diff)
downloadlinux-2.6.38-lt-ux500-bf664c0a3a42683b78d74aca2d7cfb6ccc2aa2c3.tar.gz
Blackfin: fix sparseirq/kstat_irqs fallout
The sparseirq changes (d7e51e66) played poorly with the Blackfin irqchip implementation as we're still using the old hardirq method. Our bad irq structure had a NULL kstat_irqs field so when all the common code tries to increment this field, everything goes big bada boom. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'arch/blackfin/kernel/irqchip.c')
-rw-r--r--arch/blackfin/kernel/irqchip.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/blackfin/kernel/irqchip.c b/arch/blackfin/kernel/irqchip.c
index 401bd32aa49..6e31e935bb3 100644
--- a/arch/blackfin/kernel/irqchip.c
+++ b/arch/blackfin/kernel/irqchip.c
@@ -59,12 +59,14 @@ static struct irq_chip bad_chip = {
.unmask = dummy_mask_unmask_irq,
};
+static int bad_stats;
static struct irq_desc bad_irq_desc = {
.status = IRQ_DISABLED,
.chip = &bad_chip,
.handle_irq = handle_bad_irq,
.depth = 1,
.lock = __SPIN_LOCK_UNLOCKED(irq_desc->lock),
+ .kstat_irqs = &bad_stats,
#ifdef CONFIG_SMP
.affinity = CPU_MASK_ALL
#endif