[PATCH v2] irqdomain: protect macro variable in domain iterators
Dave Martin
dave.martin at linaro.org
Sat Dec 3 00:44:58 EST 2011
On Fri, Dec 02, 2011 at 02:30:09PM +0100, Nicolas Ferre wrote:
> Signed-off-by: Nicolas Ferre <nicolas.ferre at atmel.com>
Looks OK to me:
Acked-by: Dave Martin <dave.martin at linaro.org>
> ---
> 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
>
More information about the devicetree-discuss
mailing list