aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-i386/page.h
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2005-06-25 14:57:49 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-25 16:24:48 -0700
commit3d345e3fc9e9177deb7c82e5c79e32d77eb63cce (patch)
tree4c9ecef7b3baf0f9649933510d2645a50665c2d6 /include/asm-i386/page.h
parent[PATCH] kexec: x86_64: vmlinux: fix physical addresses (diff)
downloadlinux-dev-3d345e3fc9e9177deb7c82e5c79e32d77eb63cce.tar.xz
linux-dev-3d345e3fc9e9177deb7c82e5c79e32d77eb63cce.zip
[PATCH] kexec: x86: add CONFIG_PYSICAL_START
For one kernel to report a crash another kernel has created we need to have 2 kernels loaded simultaneously in memory. To accomplish this the two kernels need to built to run at different physical addresses. This patch adds the CONFIG_PHYSICAL_START option to the x86 kernel so we can do just that. You need to know what you are doing and the ramifications are before changing this value, and most users won't care so I have made it depend on CONFIG_EMBEDDED bzImage kernels will work and run at a different address when compiled with this option but they will still load at 1MB. If you need a kernel loaded at a different address as well you need to boot a vmlinux. Signed-off-by: Eric Biederman <ebiederm@xmission.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-i386/page.h')
-rw-r--r--include/asm-i386/page.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/asm-i386/page.h b/include/asm-i386/page.h
index dea8f8e6d86e..8d93f732d72d 100644
--- a/include/asm-i386/page.h
+++ b/include/asm-i386/page.h
@@ -126,9 +126,12 @@ extern int page_is_ram(unsigned long pagenr);
#ifdef __ASSEMBLY__
#define __PAGE_OFFSET (0xC0000000)
+#define __PHYSICAL_START CONFIG_PHYSICAL_START
#else
#define __PAGE_OFFSET (0xC0000000UL)
+#define __PHYSICAL_START ((unsigned long)CONFIG_PHYSICAL_START)
#endif
+#define __KERNEL_START (__PAGE_OFFSET + __PHYSICAL_START)
#define PAGE_OFFSET ((unsigned long)__PAGE_OFFSET)