[PATCH 11/16] x86/ioapic.c: convert io_apic_level_ack_pending loop to normal for() loop

Jeremy Fitzhardinge
2009-06-16T20:18:50Z

Convert the unconventional loop in io_apic_level_ack_pending() to
a conventional for() loop.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
---
arch/x86/kernel/apic/io_apic.c | 8 +-------
1 files changed, 1 insertions(+), 7 deletions(-)

diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
index 089a4e4..8ee2b14 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -408,13 +408,10 @@ static bool io_apic_level_ack_pending(struct irq_cfg *cfg)
unsigned long flags;

spin_lock_irqsave(&ioapic_lock, flags);
- entry = cfg->irq_2_pin;
- for (;;) {
+ for (entry = cfg->irq_2_pin; entry != NULL; entry = entry->next) {
unsigned int reg;
int pin;

- if (!entry)
- break;
pin = entry->pin;
reg = io_apic_read(entry->apic, 0x10 + pin*2);
/* Is the remote IRR bit set? */
@@ -422,9 +419,6 @@ static bool io_apic_level_ack_pending(struct irq_cfg *cfg)
spin_unlock_irqrestore(&ioapic_lock, flags);
return true;
}
- if (!entry->next)
- break;
- entry = entry->next;
}
spin_unlock_irqrestore(&ioapic_lock, flags);

--
1.6.2.2