x86: initialize all fields of mp_irqs[mp_irq_entries]
authorSoeren Sandmann <sandmann@daimi.au.dk>
Sun, 18 May 2008 03:24:41 +0000 (05:24 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Sun, 25 May 2008 08:55:13 +0000 (10:55 +0200)
Commit "x86: make config_irqsrc not MPspec specific" introduced some uses
of uninitialized fields in mp_config_acpi_legacy_irqs(). I need the
following patch to get sched-devel/master to boot.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/kernel/acpi/boot.c

index 276ec058f68394ae00da5cd1426dfcb4080f2ad8..6170c6aeaf797d779e4fe199c28e967e1ab6bb5b 100644 (file)
@@ -1012,11 +1012,6 @@ void __init mp_config_acpi_legacy_irqs(void)
        if (ioapic < 0)
                return;
 
-       mp_irqs[mp_irq_entries].mp_type = MP_INTSRC;
-       mp_irqs[mp_irq_entries].mp_irqflag = 0; /* Conforming */
-       mp_irqs[mp_irq_entries].mp_srcbus = MP_ISA_BUS;
-       mp_irqs[mp_irq_entries].mp_dstapic = mp_ioapics[ioapic].mp_apicid;
-
        /*
         * Use the default configuration for the IRQs 0-15.  Unless
         * overridden by (MADT) interrupt source override entries.
@@ -1044,6 +1039,10 @@ void __init mp_config_acpi_legacy_irqs(void)
                        continue;       /* IRQ already used */
                }
 
+               mp_irqs[mp_irq_entries].mp_type = MP_INTSRC;
+               mp_irqs[mp_irq_entries].mp_irqflag = 0; /* Conforming */
+               mp_irqs[mp_irq_entries].mp_srcbus = MP_ISA_BUS;
+               mp_irqs[mp_irq_entries].mp_dstapic = mp_ioapics[ioapic].mp_apicid;
                mp_irqs[mp_irq_entries].mp_irqtype = mp_INT;
                mp_irqs[mp_irq_entries].mp_srcbusirq = i;       /* Identity mapped */
                mp_irqs[mp_irq_entries].mp_dstirq = i;