Thread (43 messages) 43 messages, 5 authors, 2012-01-02
STALE5270d

[PATCH 2/9] irq: check domain hwirq range for DT translate

From: Rob Herring <hidden>
Date: 2011-12-14 15:29:39
Also in: linux-devicetree, lkml
Subsystem: irq domains (irq number mapping library), irq subsystem, the rest · Maintainers: Thomas Gleixner, Linus Torvalds

From: Rob Herring <redacted>

A DT node may have more than 1 domain associated with it, so make sure
the hwirq number is within range when doing DT translation.

Signed-off-by: Rob Herring <redacted>
Cc: Thomas Gleixner <redacted>
---
 kernel/irq/irqdomain.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
index 200ce83..ae6441e 100644
--- a/kernel/irq/irqdomain.c
+++ b/kernel/irq/irqdomain.c
@@ -135,6 +135,9 @@ int irq_domain_simple_dt_translate(struct irq_domain *d,
 		return -EINVAL;
 	if (intsize < 1)
 		return -EINVAL;
+	if ((intspec[0] < d->hwirq_base) ||
+	    (intspec[0] >= d->hwirq_base + d->nr_irq))
+		return -EINVAL;
 
 	*out_hwirq = intspec[0];
 	*out_type = IRQ_TYPE_NONE;
-- 
1.7.5.4
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help