Commit 8621b81c authored by Eric W. Biederman's avatar Eric W. Biederman Committed by Andi Kleen

[PATCH] i386: Reserve kernel memory starting from _text

Currently when we are reserving the memory the kernel text
resides in we start at __PHYSICAL_START which happens to be
correct but not very obvious.  In addition when we start relocating
the kernel __PHYSICAL_START is the wrong value, as it is an
absolute symbol that does not get relocated.

By starting the reservation at __pa_symbol(_text)
the code is clearer and will be correct when relocated.
Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
Signed-off-by: default avatarVivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: default avatarAndi Kleen <ak@suse.de>
parent 9f45accf
...@@ -1118,8 +1118,8 @@ void __init setup_bootmem_allocator(void) ...@@ -1118,8 +1118,8 @@ void __init setup_bootmem_allocator(void)
* the (very unlikely) case of us accidentally initializing the * the (very unlikely) case of us accidentally initializing the
* bootmem allocator with an invalid RAM area. * bootmem allocator with an invalid RAM area.
*/ */
reserve_bootmem(__PHYSICAL_START, (PFN_PHYS(min_low_pfn) + reserve_bootmem(__pa_symbol(_text), (PFN_PHYS(min_low_pfn) +
bootmap_size + PAGE_SIZE-1) - (__PHYSICAL_START)); bootmap_size + PAGE_SIZE-1) - __pa_symbol(_text));
/* /*
* reserve physical page 0 - it's a special BIOS page on many boxes, * reserve physical page 0 - it's a special BIOS page on many boxes,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment