diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-08-14 08:58:01 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-08-14 08:58:01 -0400 |
commit | 51ca3c679194e7435c25b8e77b0a73c597e41ae9 (patch) | |
tree | a681dca369607ab0f371d5246b0f75140b860a8a /arch/x86/kernel/setup.c | |
parent | b55793f7528ce1b73c25b3ac8a86a6cda2a0f9a4 (diff) | |
parent | b635acec48bcaa9183fcbf4e3955616b0d4119b5 (diff) |
Merge branch 'linus' into x86/core
Conflicts:
arch/x86/kernel/genapic_64.c
include/asm-x86/kvm_host.h
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/setup.c')
-rw-r--r-- | arch/x86/kernel/setup.c | 35 |
1 files changed, 17 insertions, 18 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 792b87853a76..59f07e14d083 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c | |||
@@ -604,6 +604,14 @@ void __init setup_arch(char **cmdline_p) | |||
604 | early_cpu_init(); | 604 | early_cpu_init(); |
605 | early_ioremap_init(); | 605 | early_ioremap_init(); |
606 | 606 | ||
607 | #if defined(CONFIG_VMI) && defined(CONFIG_X86_32) | ||
608 | /* | ||
609 | * Must be before kernel pagetables are setup | ||
610 | * or fixmap area is touched. | ||
611 | */ | ||
612 | vmi_init(); | ||
613 | #endif | ||
614 | |||
607 | ROOT_DEV = old_decode_dev(boot_params.hdr.root_dev); | 615 | ROOT_DEV = old_decode_dev(boot_params.hdr.root_dev); |
608 | screen_info = boot_params.screen_info; | 616 | screen_info = boot_params.screen_info; |
609 | edid_info = boot_params.edid_info; | 617 | edid_info = boot_params.edid_info; |
@@ -790,10 +798,6 @@ void __init setup_arch(char **cmdline_p) | |||
790 | 798 | ||
791 | initmem_init(0, max_pfn); | 799 | initmem_init(0, max_pfn); |
792 | 800 | ||
793 | #ifdef CONFIG_X86_64 | ||
794 | dma32_reserve_bootmem(); | ||
795 | #endif | ||
796 | |||
797 | #ifdef CONFIG_ACPI_SLEEP | 801 | #ifdef CONFIG_ACPI_SLEEP |
798 | /* | 802 | /* |
799 | * Reserve low memory region for sleep support. | 803 | * Reserve low memory region for sleep support. |
@@ -808,20 +812,21 @@ void __init setup_arch(char **cmdline_p) | |||
808 | #endif | 812 | #endif |
809 | reserve_crashkernel(); | 813 | reserve_crashkernel(); |
810 | 814 | ||
815 | #ifdef CONFIG_X86_64 | ||
816 | /* | ||
817 | * dma32_reserve_bootmem() allocates bootmem which may conflict | ||
818 | * with the crashkernel command line, so do that after | ||
819 | * reserve_crashkernel() | ||
820 | */ | ||
821 | dma32_reserve_bootmem(); | ||
822 | #endif | ||
823 | |||
811 | reserve_ibft_region(); | 824 | reserve_ibft_region(); |
812 | 825 | ||
813 | #ifdef CONFIG_KVM_CLOCK | 826 | #ifdef CONFIG_KVM_CLOCK |
814 | kvmclock_init(); | 827 | kvmclock_init(); |
815 | #endif | 828 | #endif |
816 | 829 | ||
817 | #if defined(CONFIG_VMI) && defined(CONFIG_X86_32) | ||
818 | /* | ||
819 | * Must be after max_low_pfn is determined, and before kernel | ||
820 | * pagetables are setup. | ||
821 | */ | ||
822 | vmi_init(); | ||
823 | #endif | ||
824 | |||
825 | paravirt_pagetable_setup_start(swapper_pg_dir); | 830 | paravirt_pagetable_setup_start(swapper_pg_dir); |
826 | paging_init(); | 831 | paging_init(); |
827 | paravirt_pagetable_setup_done(swapper_pg_dir); | 832 | paravirt_pagetable_setup_done(swapper_pg_dir); |
@@ -858,12 +863,6 @@ void __init setup_arch(char **cmdline_p) | |||
858 | init_apic_mappings(); | 863 | init_apic_mappings(); |
859 | ioapic_init_mappings(); | 864 | ioapic_init_mappings(); |
860 | 865 | ||
861 | #if defined(CONFIG_SMP) && defined(CONFIG_X86_PC) && defined(CONFIG_X86_32) | ||
862 | if (def_to_bigsmp) | ||
863 | printk(KERN_WARNING "More than 8 CPUs detected and " | ||
864 | "CONFIG_X86_PC cannot handle it.\nUse " | ||
865 | "CONFIG_X86_GENERICARCH or CONFIG_X86_BIGSMP.\n"); | ||
866 | #endif | ||
867 | kvm_guest_init(); | 866 | kvm_guest_init(); |
868 | 867 | ||
869 | e820_reserve_resources(); | 868 | e820_reserve_resources(); |