diff options
Diffstat (limited to 'arch/x86/kernel/setup.c')
-rw-r--r-- | arch/x86/kernel/setup.c | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 2d888586385d..362d4e7f2d38 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c | |||
@@ -445,7 +445,7 @@ static void __init reserve_early_setup_data(void) | |||
445 | * @size: Size of the crashkernel memory to reserve. | 445 | * @size: Size of the crashkernel memory to reserve. |
446 | * Returns the base address on success, and -1ULL on failure. | 446 | * Returns the base address on success, and -1ULL on failure. |
447 | */ | 447 | */ |
448 | unsigned long long find_and_reserve_crashkernel(unsigned long long size) | 448 | unsigned long long __init find_and_reserve_crashkernel(unsigned long long size) |
449 | { | 449 | { |
450 | const unsigned long long alignment = 16<<20; /* 16M */ | 450 | const unsigned long long alignment = 16<<20; /* 16M */ |
451 | unsigned long long start = 0LL; | 451 | unsigned long long start = 0LL; |
@@ -670,6 +670,14 @@ void __init setup_arch(char **cmdline_p) | |||
670 | 670 | ||
671 | parse_early_param(); | 671 | parse_early_param(); |
672 | 672 | ||
673 | #if defined(CONFIG_VMI) && defined(CONFIG_X86_32) | ||
674 | /* | ||
675 | * Must be before kernel pagetables are setup | ||
676 | * or fixmap area is touched. | ||
677 | */ | ||
678 | vmi_init(); | ||
679 | #endif | ||
680 | |||
673 | /* after early param, so could get panic from serial */ | 681 | /* after early param, so could get panic from serial */ |
674 | reserve_early_setup_data(); | 682 | reserve_early_setup_data(); |
675 | 683 | ||
@@ -817,14 +825,6 @@ void __init setup_arch(char **cmdline_p) | |||
817 | kvmclock_init(); | 825 | kvmclock_init(); |
818 | #endif | 826 | #endif |
819 | 827 | ||
820 | #if defined(CONFIG_VMI) && defined(CONFIG_X86_32) | ||
821 | /* | ||
822 | * Must be after max_low_pfn is determined, and before kernel | ||
823 | * pagetables are setup. | ||
824 | */ | ||
825 | vmi_init(); | ||
826 | #endif | ||
827 | |||
828 | paravirt_pagetable_setup_start(swapper_pg_dir); | 828 | paravirt_pagetable_setup_start(swapper_pg_dir); |
829 | paging_init(); | 829 | paging_init(); |
830 | paravirt_pagetable_setup_done(swapper_pg_dir); | 830 | paravirt_pagetable_setup_done(swapper_pg_dir); |
@@ -861,12 +861,6 @@ void __init setup_arch(char **cmdline_p) | |||
861 | init_apic_mappings(); | 861 | init_apic_mappings(); |
862 | ioapic_init_mappings(); | 862 | ioapic_init_mappings(); |
863 | 863 | ||
864 | #if defined(CONFIG_SMP) && defined(CONFIG_X86_PC) && defined(CONFIG_X86_32) | ||
865 | if (def_to_bigsmp) | ||
866 | printk(KERN_WARNING "More than 8 CPUs detected and " | ||
867 | "CONFIG_X86_PC cannot handle it.\nUse " | ||
868 | "CONFIG_X86_GENERICARCH or CONFIG_X86_BIGSMP.\n"); | ||
869 | #endif | ||
870 | kvm_guest_init(); | 864 | kvm_guest_init(); |
871 | 865 | ||
872 | e820_reserve_resources(); | 866 | e820_reserve_resources(); |