diff options
Diffstat (limited to 'arch/x86/kernel/setup.c')
-rw-r--r-- | arch/x86/kernel/setup.c | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 58a07b10812..f4b9b80e1b9 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c | |||
@@ -49,6 +49,7 @@ | |||
49 | #include <asm/pci-direct.h> | 49 | #include <asm/pci-direct.h> |
50 | #include <linux/init_ohci1394_dma.h> | 50 | #include <linux/init_ohci1394_dma.h> |
51 | #include <linux/kvm_para.h> | 51 | #include <linux/kvm_para.h> |
52 | #include <linux/dma-contiguous.h> | ||
52 | 53 | ||
53 | #include <linux/errno.h> | 54 | #include <linux/errno.h> |
54 | #include <linux/kernel.h> | 55 | #include <linux/kernel.h> |
@@ -72,7 +73,7 @@ | |||
72 | 73 | ||
73 | #include <asm/mtrr.h> | 74 | #include <asm/mtrr.h> |
74 | #include <asm/apic.h> | 75 | #include <asm/apic.h> |
75 | #include <asm/trampoline.h> | 76 | #include <asm/realmode.h> |
76 | #include <asm/e820.h> | 77 | #include <asm/e820.h> |
77 | #include <asm/mpspec.h> | 78 | #include <asm/mpspec.h> |
78 | #include <asm/setup.h> | 79 | #include <asm/setup.h> |
@@ -333,8 +334,8 @@ static void __init relocate_initrd(void) | |||
333 | memblock_reserve(ramdisk_here, area_size); | 334 | memblock_reserve(ramdisk_here, area_size); |
334 | initrd_start = ramdisk_here + PAGE_OFFSET; | 335 | initrd_start = ramdisk_here + PAGE_OFFSET; |
335 | initrd_end = initrd_start + ramdisk_size; | 336 | initrd_end = initrd_start + ramdisk_size; |
336 | printk(KERN_INFO "Allocated new RAMDISK: %08llx - %08llx\n", | 337 | printk(KERN_INFO "Allocated new RAMDISK: [mem %#010llx-%#010llx]\n", |
337 | ramdisk_here, ramdisk_here + ramdisk_size); | 338 | ramdisk_here, ramdisk_here + ramdisk_size - 1); |
338 | 339 | ||
339 | q = (char *)initrd_start; | 340 | q = (char *)initrd_start; |
340 | 341 | ||
@@ -365,8 +366,8 @@ static void __init relocate_initrd(void) | |||
365 | /* high pages is not converted by early_res_to_bootmem */ | 366 | /* high pages is not converted by early_res_to_bootmem */ |
366 | ramdisk_image = boot_params.hdr.ramdisk_image; | 367 | ramdisk_image = boot_params.hdr.ramdisk_image; |
367 | ramdisk_size = boot_params.hdr.ramdisk_size; | 368 | ramdisk_size = boot_params.hdr.ramdisk_size; |
368 | printk(KERN_INFO "Move RAMDISK from %016llx - %016llx to" | 369 | printk(KERN_INFO "Move RAMDISK from [mem %#010llx-%#010llx] to" |
369 | " %08llx - %08llx\n", | 370 | " [mem %#010llx-%#010llx]\n", |
370 | ramdisk_image, ramdisk_image + ramdisk_size - 1, | 371 | ramdisk_image, ramdisk_image + ramdisk_size - 1, |
371 | ramdisk_here, ramdisk_here + ramdisk_size - 1); | 372 | ramdisk_here, ramdisk_here + ramdisk_size - 1); |
372 | } | 373 | } |
@@ -391,8 +392,8 @@ static void __init reserve_initrd(void) | |||
391 | ramdisk_size, end_of_lowmem>>1); | 392 | ramdisk_size, end_of_lowmem>>1); |
392 | } | 393 | } |
393 | 394 | ||
394 | printk(KERN_INFO "RAMDISK: %08llx - %08llx\n", ramdisk_image, | 395 | printk(KERN_INFO "RAMDISK: [mem %#010llx-%#010llx]\n", ramdisk_image, |
395 | ramdisk_end); | 396 | ramdisk_end - 1); |
396 | 397 | ||
397 | 398 | ||
398 | if (ramdisk_end <= end_of_lowmem) { | 399 | if (ramdisk_end <= end_of_lowmem) { |
@@ -905,10 +906,10 @@ void __init setup_arch(char **cmdline_p) | |||
905 | setup_bios_corruption_check(); | 906 | setup_bios_corruption_check(); |
906 | #endif | 907 | #endif |
907 | 908 | ||
908 | printk(KERN_DEBUG "initial memory mapped : 0 - %08lx\n", | 909 | printk(KERN_DEBUG "initial memory mapped: [mem 0x00000000-%#010lx]\n", |
909 | max_pfn_mapped<<PAGE_SHIFT); | 910 | (max_pfn_mapped<<PAGE_SHIFT) - 1); |
910 | 911 | ||
911 | setup_trampolines(); | 912 | setup_real_mode(); |
912 | 913 | ||
913 | init_gbpages(); | 914 | init_gbpages(); |
914 | 915 | ||
@@ -925,6 +926,7 @@ void __init setup_arch(char **cmdline_p) | |||
925 | } | 926 | } |
926 | #endif | 927 | #endif |
927 | memblock.current_limit = get_max_mapped(); | 928 | memblock.current_limit = get_max_mapped(); |
929 | dma_contiguous_reserve(0); | ||
928 | 930 | ||
929 | /* | 931 | /* |
930 | * NOTE: On x86-32, only from this point on, fixmaps are ready for use. | 932 | * NOTE: On x86-32, only from this point on, fixmaps are ready for use. |
@@ -966,6 +968,8 @@ void __init setup_arch(char **cmdline_p) | |||
966 | if (boot_cpu_data.cpuid_level >= 0) { | 968 | if (boot_cpu_data.cpuid_level >= 0) { |
967 | /* A CPU has %cr4 if and only if it has CPUID */ | 969 | /* A CPU has %cr4 if and only if it has CPUID */ |
968 | mmu_cr4_features = read_cr4(); | 970 | mmu_cr4_features = read_cr4(); |
971 | if (trampoline_cr4_features) | ||
972 | *trampoline_cr4_features = mmu_cr4_features; | ||
969 | } | 973 | } |
970 | 974 | ||
971 | #ifdef CONFIG_X86_32 | 975 | #ifdef CONFIG_X86_32 |