genirq: fix name space collision of nr_irqs in autoprobe.c
probe_irq_off() is disfunctional as the local nr_irqs is referenced instead of the global one for the for_each_irq_desc() iterator. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
10e580842e
commit
63d659d556
|
@ -161,7 +161,7 @@ EXPORT_SYMBOL(probe_irq_mask);
|
|||
*/
|
||||
int probe_irq_off(unsigned long val)
|
||||
{
|
||||
int i, irq_found = 0, nr_irqs = 0;
|
||||
int i, irq_found = 0, nr_of_irqs = 0;
|
||||
struct irq_desc *desc;
|
||||
unsigned int status;
|
||||
|
||||
|
@ -171,9 +171,9 @@ int probe_irq_off(unsigned long val)
|
|||
|
||||
if (status & IRQ_AUTODETECT) {
|
||||
if (!(status & IRQ_WAITING)) {
|
||||
if (!nr_irqs)
|
||||
if (!nr_of_irqs)
|
||||
irq_found = i;
|
||||
nr_irqs++;
|
||||
nr_of_irqs++;
|
||||
}
|
||||
desc->status = status & ~IRQ_AUTODETECT;
|
||||
desc->chip->shutdown(i);
|
||||
|
@ -182,7 +182,7 @@ int probe_irq_off(unsigned long val)
|
|||
}
|
||||
mutex_unlock(&probing_active);
|
||||
|
||||
if (nr_irqs > 1)
|
||||
if (nr_of_irqs > 1)
|
||||
irq_found = -irq_found;
|
||||
|
||||
return irq_found;
|
||||
|
|
Loading…
Reference in New Issue