diff options
author | Glauber de Oliveira Costa <gcosta@redhat.com> | 2008-03-19 13:25:20 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-04-17 11:41:00 -0400 |
commit | ccf82085ee32c9b171183d8042e8a6e2776ec628 (patch) | |
tree | 69b948126a7046974042ae8300aafc155dc1c6c5 /arch/x86/kernel/setup_32.c | |
parent | cbe879fc6c77b5751a91167654b75a39421d0f3f (diff) |
x86: initialize map pointers in setup_32.c
this will serve as a reference as to whether or not to
use the per_cpu variables in mpparse. Done the same way
as x86_64
Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/setup_32.c')
-rw-r--r-- | arch/x86/kernel/setup_32.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/x86/kernel/setup_32.c b/arch/x86/kernel/setup_32.c index d4ad6e8ae886..eb97bcfe0f6f 100644 --- a/arch/x86/kernel/setup_32.c +++ b/arch/x86/kernel/setup_32.c | |||
@@ -722,6 +722,18 @@ char * __init __attribute__((weak)) memory_setup(void) | |||
722 | return machine_specific_memory_setup(); | 722 | return machine_specific_memory_setup(); |
723 | } | 723 | } |
724 | 724 | ||
725 | #ifdef CONFIG_NUMA | ||
726 | /* | ||
727 | * In the golden day, when everything among i386 and x86_64 will be | ||
728 | * integrated, this will not live here | ||
729 | */ | ||
730 | void *x86_cpu_to_node_map_early_ptr; | ||
731 | int x86_cpu_to_node_map_init[NR_CPUS] = { | ||
732 | [0 ... NR_CPUS-1] = NUMA_NO_NODE | ||
733 | }; | ||
734 | DEFINE_PER_CPU(int, x86_cpu_to_node_map) = NUMA_NO_NODE; | ||
735 | #endif | ||
736 | |||
725 | /* | 737 | /* |
726 | * Determine if we were loaded by an EFI loader. If so, then we have also been | 738 | * Determine if we were loaded by an EFI loader. If so, then we have also been |
727 | * passed the efi memmap, systab, etc., so we should use these data structures | 739 | * passed the efi memmap, systab, etc., so we should use these data structures |
@@ -855,6 +867,18 @@ void __init setup_arch(char **cmdline_p) | |||
855 | 867 | ||
856 | io_delay_init(); | 868 | io_delay_init(); |
857 | 869 | ||
870 | #ifdef CONFIG_X86_SMP | ||
871 | /* | ||
872 | * setup to use the early static init tables during kernel startup | ||
873 | * X86_SMP will exclude sub-arches that don't deal well with it. | ||
874 | */ | ||
875 | x86_cpu_to_apicid_early_ptr = (void *)x86_cpu_to_apicid_init; | ||
876 | x86_bios_cpu_apicid_early_ptr = (void *)x86_bios_cpu_apicid_init; | ||
877 | #ifdef CONFIG_NUMA | ||
878 | x86_cpu_to_node_map_early_ptr = (void *)x86_cpu_to_node_map_init; | ||
879 | #endif | ||
880 | #endif | ||
881 | |||
858 | #ifdef CONFIG_X86_GENERICARCH | 882 | #ifdef CONFIG_X86_GENERICARCH |
859 | generic_apic_probe(); | 883 | generic_apic_probe(); |
860 | #endif | 884 | #endif |