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

Commit ed972ccf authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

x86: ioapic: Split out the nested loop in setup_IO_APIC_irqs()



Two consecutive

    for(...)
    for(...)

lines to avoid an extra indentation are just horrible to read. I had
to look more than once to figure out what the code is doing.

Split out the inner loop into a separate function.

Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent c8d6b8fe
Loading
Loading
Loading
Loading
+13 −6
Original line number Diff line number Diff line
@@ -1398,15 +1398,12 @@ static bool __init io_apic_pin_not_connected(int idx, int apic_id, int pin)
	return true;
}

static void __init setup_IO_APIC_irqs(void)
static void __init __io_apic_setup_irqs(unsigned int apic_id)
{
	int apic_id, pin, idx, irq;
	int node = cpu_to_node(0);
	int idx, node = cpu_to_node(0);
	unsigned int pin, irq;
	struct irq_cfg *cfg;

	apic_printk(APIC_VERBOSE, KERN_DEBUG "init IO_APIC IRQs\n");

	for (apic_id = 0; apic_id < nr_ioapics; apic_id++)
	for (pin = 0; pin < nr_ioapic_registers[apic_id]; pin++) {
		idx = find_irq_entry(apic_id, pin, mp_INT);
		if (io_apic_pin_not_connected(idx, apic_id, pin))
@@ -1439,6 +1436,16 @@ static void __init setup_IO_APIC_irqs(void)
	}
}

static void __init setup_IO_APIC_irqs(void)
{
	unsigned int apic_id;

	apic_printk(APIC_VERBOSE, KERN_DEBUG "init IO_APIC IRQs\n");

	for (apic_id = 0; apic_id < nr_ioapics; apic_id++)
		__io_apic_setup_irqs(apic_id);
}

/*
 * for the gsit that is not in first ioapic
 * but could not use acpi_register_gsi()