diff options
Diffstat (limited to 'arch/x86/kernel/head32.c')
| -rw-r--r-- | arch/x86/kernel/head32.c | 10 | 
1 files changed, 6 insertions, 4 deletions
| diff --git a/arch/x86/kernel/head32.c b/arch/x86/kernel/head32.c index 784360c0625c..9a6ca2392170 100644 --- a/arch/x86/kernel/head32.c +++ b/arch/x86/kernel/head32.c | |||
| @@ -8,6 +8,7 @@ | |||
| 8 | #include <linux/init.h> | 8 | #include <linux/init.h> | 
| 9 | #include <linux/start_kernel.h> | 9 | #include <linux/start_kernel.h> | 
| 10 | #include <linux/mm.h> | 10 | #include <linux/mm.h> | 
| 11 | #include <linux/memblock.h> | ||
| 11 | 12 | ||
| 12 | #include <asm/setup.h> | 13 | #include <asm/setup.h> | 
| 13 | #include <asm/sections.h> | 14 | #include <asm/sections.h> | 
| @@ -30,17 +31,18 @@ static void __init i386_default_early_setup(void) | |||
| 30 | 31 | ||
| 31 | void __init i386_start_kernel(void) | 32 | void __init i386_start_kernel(void) | 
| 32 | { | 33 | { | 
| 34 | memblock_init(); | ||
| 35 | |||
| 33 | #ifdef CONFIG_X86_TRAMPOLINE | 36 | #ifdef CONFIG_X86_TRAMPOLINE | 
| 34 | /* | 37 | /* | 
| 35 | * But first pinch a few for the stack/trampoline stuff | 38 | * But first pinch a few for the stack/trampoline stuff | 
| 36 | * FIXME: Don't need the extra page at 4K, but need to fix | 39 | * FIXME: Don't need the extra page at 4K, but need to fix | 
| 37 | * trampoline before removing it. (see the GDT stuff) | 40 | * trampoline before removing it. (see the GDT stuff) | 
| 38 | */ | 41 | */ | 
| 39 | reserve_early_overlap_ok(PAGE_SIZE, PAGE_SIZE + PAGE_SIZE, | 42 | memblock_x86_reserve_range(PAGE_SIZE, PAGE_SIZE + PAGE_SIZE, "EX TRAMPOLINE"); | 
| 40 | "EX TRAMPOLINE"); | ||
| 41 | #endif | 43 | #endif | 
| 42 | 44 | ||
| 43 | reserve_early(__pa_symbol(&_text), __pa_symbol(&__bss_stop), "TEXT DATA BSS"); | 45 | memblock_x86_reserve_range(__pa_symbol(&_text), __pa_symbol(&__bss_stop), "TEXT DATA BSS"); | 
| 44 | 46 | ||
| 45 | #ifdef CONFIG_BLK_DEV_INITRD | 47 | #ifdef CONFIG_BLK_DEV_INITRD | 
| 46 | /* Reserve INITRD */ | 48 | /* Reserve INITRD */ | 
| @@ -49,7 +51,7 @@ void __init i386_start_kernel(void) | |||
| 49 | u64 ramdisk_image = boot_params.hdr.ramdisk_image; | 51 | u64 ramdisk_image = boot_params.hdr.ramdisk_image; | 
| 50 | u64 ramdisk_size = boot_params.hdr.ramdisk_size; | 52 | u64 ramdisk_size = boot_params.hdr.ramdisk_size; | 
| 51 | u64 ramdisk_end = PAGE_ALIGN(ramdisk_image + ramdisk_size); | 53 | u64 ramdisk_end = PAGE_ALIGN(ramdisk_image + ramdisk_size); | 
| 52 | reserve_early(ramdisk_image, ramdisk_end, "RAMDISK"); | 54 | memblock_x86_reserve_range(ramdisk_image, ramdisk_end, "RAMDISK"); | 
| 53 | } | 55 | } | 
| 54 | #endif | 56 | #endif | 
| 55 | 57 | ||
