Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 63d659d5 authored by Thomas Gleixner's avatar Thomas Gleixner Committed by Ingo Molnar
Browse files

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: default avatarThomas Gleixner <tglx@linutronix.de>
parent 10e58084
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -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;