[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120216060334.GA11758@r65073-Latitude-D630>
Date: Wed, 15 Feb 2012 22:03:35 -0800
From: Shawn Guo <shawn.guo@...aro.org>
To: Grant Likely <grant.likely@...retlab.ca>
Cc: Nicolas Ferre <nicolas.ferre@...el.com>,
devicetree-discuss@...ts.ozlabs.org,
Rob Herring <rob.herring@...xeda.com>,
Stephen Rothwell <sfr@...b.auug.org.au>,
linux-kernel@...r.kernel.org, Milton Miller <miltonm@....com>,
Thomas Gleixner <tglx@...utronix.de>,
linuxppc-dev@...ts.ozlabs.org, linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH v3 24/25] irq_domain: remove "hint" when allocating irq
numbers
On Wed, Feb 15, 2012 at 10:32:43PM -0700, Grant Likely wrote:
...
> That's a bug then. The implementation should work without patch 24. Does
> this patch fix it?
>
Yes, it fixes the problem for me.
Regards,
Shawn
> ---
>
> diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
> index 2c1d6f8..2d3dfff 100644
> --- a/kernel/irq/irqdomain.c
> +++ b/kernel/irq/irqdomain.c
> @@ -516,8 +516,8 @@ unsigned int irq_find_mapping(struct irq_domain *domain,
> return irq_domain_legacy_revmap(domain, hwirq);
>
> /* Slow path does a linear search of the map */
> - if (hint < NUM_ISA_INTERRUPTS)
> - hint = NUM_ISA_INTERRUPTS;
> + if (hint == 0)
> + hint = 1;
> i = hint;
> do {
> struct irq_data *data = irq_get_irq_data(i);
> @@ -525,7 +525,7 @@ unsigned int irq_find_mapping(struct irq_domain *domain,
> return i;
> i++;
> if (i >= irq_virq_count)
> - i = NUM_ISA_INTERRUPTS;
> + i = 1
> } while(i != hint);
> return 0;
> }
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists