aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2006-12-06 20:14:03 -0500
committerAndi Kleen <andi@basil.nowhere.org>2006-12-06 20:14:03 -0500
commit8621b81c744ff8880a1efe095a4dcd09763ddb5a (patch)
tree46ed6f4b7c0e2391bcc956a7e0e0fc498e389f67 /arch
parent9f45accf17efc050ba26bf77cc4f166c950b284e (diff)
[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: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com> Signed-off-by: Andi Kleen <ak@suse.de>
Diffstat (limited to 'arch')
-rw-r--r--arch/i386/kernel/setup.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c
index 141041dde74d..61539afbdf23 100644
--- a/arch/i386/kernel/setup.c
+++ b/arch/i386/kernel/setup.c
@@ -1118,8 +1118,8 @@ void __init setup_bootmem_allocator(void)
1118 * the (very unlikely) case of us accidentally initializing the 1118 * the (very unlikely) case of us accidentally initializing the
1119 * bootmem allocator with an invalid RAM area. 1119 * bootmem allocator with an invalid RAM area.
1120 */ 1120 */
1121 reserve_bootmem(__PHYSICAL_START, (PFN_PHYS(min_low_pfn) + 1121 reserve_bootmem(__pa_symbol(_text), (PFN_PHYS(min_low_pfn) +
1122 bootmap_size + PAGE_SIZE-1) - (__PHYSICAL_START)); 1122 bootmap_size + PAGE_SIZE-1) - __pa_symbol(_text));
1123 1123
1124 /* 1124 /*
1125 * reserve physical page 0 - it's a special BIOS page on many boxes, 1125 * reserve physical page 0 - it's a special BIOS page on many boxes,