[PATCH] i386/x86-64: Fix ACPI disabled LAPIC handling mismerge
authorAndi Kleen <ak@suse.de>
Mon, 1 May 2006 19:15:49 +0000 (12:15 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 2 May 2006 01:17:43 +0000 (18:17 -0700)
The patch I submitted earlier to fix disabled LAPIC handling in ACPI was
mismerged for some reason I still don't quite understand.  Parts of it was
applied to the wrong function.

This patch fixes it up.

Cc: <len.brown@intel.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/i386/kernel/acpi/boot.c

index 049a25583793a26cd85201a0e69a190880fa24c7..4c785a67d5852d4fd1fecbd40cb4c9db2dc9868f 100644 (file)
@@ -215,7 +215,7 @@ static int __init acpi_parse_madt(unsigned long phys_addr, unsigned long size)
 {
        struct acpi_table_madt *madt = NULL;
 
-       if (!phys_addr || !size || !cpu_has_apic)
+       if (!phys_addr || !size)
                return -EINVAL;
 
        madt = (struct acpi_table_madt *)__acpi_map_table(phys_addr, size);
@@ -1151,6 +1151,9 @@ int __init acpi_boot_init(void)
 
        acpi_table_parse(ACPI_BOOT, acpi_parse_sbf);
 
+       if (!cpu_has_apic)
+               return -ENODEV;
+
        /*
         * set sci_int and PM timer address
         */