[PATCH v2] irqdomain: protect macro variable in domain iterators

From: Nicolas Ferre
Date: Fri Dec 02 2011 - 08:30:28 EST


Signed-off-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
---
v2: add brackets to each macro variable.

include/linux/irqdomain.h | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.h
index bd4272b..e535063 100644
--- a/include/linux/irqdomain.h
+++ b/include/linux/irqdomain.h
@@ -82,12 +82,14 @@ static inline unsigned int irq_domain_to_irq(struct irq_domain *d,
}

#define irq_domain_for_each_hwirq(d, hw) \
- for (hw = d->hwirq_base; hw < d->hwirq_base + d->nr_irq; hw++)
+ for ((hw) = (d)->hwirq_base; \
+ (hw) < (d)->hwirq_base + (d)->nr_irq; \
+ (hw)++)

#define irq_domain_for_each_irq(d, hw, irq) \
- for (hw = d->hwirq_base, irq = irq_domain_to_irq(d, hw); \
- hw < d->hwirq_base + d->nr_irq; \
- hw++, irq = irq_domain_to_irq(d, hw))
+ for ((hw) = (d)->hwirq_base, (irq) = irq_domain_to_irq((d), (hw)); \
+ (hw) < (d)->hwirq_base + (d)->nr_irq; \
+ (hw)++, (irq) = irq_domain_to_irq((d), (hw)))

extern void irq_domain_add(struct irq_domain *domain);
extern void irq_domain_del(struct irq_domain *domain);
--
1.7.5.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/