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

Commit 4eea6fff authored by Jeremy Fitzhardinge's avatar Jeremy Fitzhardinge
Browse files

x86/ioapic.c: clean up replace_pin_at_irq_node logic and comments



There's no need for a control variable in replace_pin_at_irq_node();
it can just return if it finds the old apic/pin to replace.

If the loop terminates, then it didn't find the old apic/pin, so it can
add the new ones.

Signed-off-by: default avatarJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
parent 535b6429
Loading
Loading
Loading
Loading
+5 −8
Original line number Diff line number Diff line
@@ -516,20 +516,17 @@ static void __init replace_pin_at_irq_node(struct irq_cfg *cfg, int node,
					   int newapic, int newpin)
{
	struct irq_pin_list *entry;
	int replaced = 0;

	for (entry = cfg->irq_2_pin; entry != NULL; entry = entry->next) {
		if (entry->apic == oldapic && entry->pin == oldpin) {
			entry->apic = newapic;
			entry->pin = newpin;
			replaced = 1;
			/* every one is different, right? */
			break;
			return;
		}
	}

	/* why? call replace before add? */
	if (!replaced)
	/* old apic/pin didn't exist, so just add new ones */
	add_pin_to_irq_node(cfg, node, newapic, newpin);
}