Thread (64 messages) flat view 64 messages, 14 authors, 2012-02-23

Re: [PATCH v3 24/25] irq_domain: remove "hint" when allocating irq numbers

From: Shawn Guo <hidden>
Date: 2012-02-16 06:03:44
Also in: linux-arm-kernel, linux-devicetree, lkml

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
quoted hunk ↗ jump to hunk
---
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;
 }
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help