x86, uv: add early detection of UV system types
authorJack Steiner <steiner@sgi.com>
Tue, 23 Sep 2008 20:37:13 +0000 (15:37 -0500)
committerIngo Molnar <mingo@elte.hu>
Mon, 13 Oct 2008 08:21:51 +0000 (10:21 +0200)
Portions of the ACPI code needs to know if a system is a UV system prior
to genapic initialization. This patch adds a call early_acpi_boot_init()
so that the apic type is discovered earlier.

V2 of the patch adding fixes from Yinghai Lu.
Much cleaner and smaller.

Signed-off-by: Jack Steiner <steiner@sgi.com>
Acked-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/setup.c
arch/x86/mm/srat_64.c

index de6a9d6d599fe435de11fb89b66659a74c3e5b42..2255782e8d4b94664ff8c3c053af26aa114d0e6c 100644 (file)
@@ -998,6 +998,8 @@ void __init setup_arch(char **cmdline_p)
         */
        acpi_boot_table_init();
 
+       early_acpi_boot_init();
+
 #ifdef CONFIG_ACPI_NUMA
        /*
         * Parse SRAT to discover nodes.
index 1b4763e26ea96f52b6240475e85a04cb3a06dc4b..51c0a2fc14fe05521def4af57c0e2d1d29c8359d 100644 (file)
@@ -138,7 +138,7 @@ acpi_numa_processor_affinity_init(struct acpi_srat_cpu_affinity *pa)
                return;
        }
 
-       if (is_uv_system())
+       if (get_uv_system_type() >= UV_X2APIC)
                apic_id = (pa->apic_id << 8) | pa->local_sapic_eid;
        else
                apic_id = pa->apic_id;