diff options
author | Kumar Gala <galak@kernel.crashing.org> | 2008-04-15 15:52:26 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2008-04-16 17:46:13 -0400 |
commit | 4846c5deb9776a7306d0f656ade7505278ac39ba (patch) | |
tree | 42ad389b154de5e498dd6dfde6d710d748a536cf /arch | |
parent | 09b5e63f827016732d956abb7a4c74a312d20521 (diff) |
[POWERPC] Clean up some linker and symbol usage
* PAGE_OFFSET is not always the start of code, use _stext instead.
* grab PAGE_SIZE and KERNELBASE from asm/page.h like ppc64 does. Makes the
code a bit more common and provide a single place to manipulate the
defines for things like kdump.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/kernel/setup_32.c | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/setup_64.c | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/vmlinux.lds.S | 4 |
3 files changed, 3 insertions, 5 deletions
diff --git a/arch/powerpc/kernel/setup_32.c b/arch/powerpc/kernel/setup_32.c index eac936eb3190..d813c394f0ff 100644 --- a/arch/powerpc/kernel/setup_32.c +++ b/arch/powerpc/kernel/setup_32.c | |||
@@ -289,7 +289,7 @@ void __init setup_arch(char **cmdline_p) | |||
289 | if (ppc_md.panic) | 289 | if (ppc_md.panic) |
290 | setup_panic(); | 290 | setup_panic(); |
291 | 291 | ||
292 | init_mm.start_code = PAGE_OFFSET; | 292 | init_mm.start_code = (unsigned long)_stext; |
293 | init_mm.end_code = (unsigned long) _etext; | 293 | init_mm.end_code = (unsigned long) _etext; |
294 | init_mm.end_data = (unsigned long) _edata; | 294 | init_mm.end_data = (unsigned long) _edata; |
295 | init_mm.brk = klimit; | 295 | init_mm.brk = klimit; |
diff --git a/arch/powerpc/kernel/setup_64.c b/arch/powerpc/kernel/setup_64.c index 2c2d8315193c..0205d408d2ed 100644 --- a/arch/powerpc/kernel/setup_64.c +++ b/arch/powerpc/kernel/setup_64.c | |||
@@ -510,7 +510,7 @@ void __init setup_arch(char **cmdline_p) | |||
510 | if (ppc_md.panic) | 510 | if (ppc_md.panic) |
511 | setup_panic(); | 511 | setup_panic(); |
512 | 512 | ||
513 | init_mm.start_code = PAGE_OFFSET; | 513 | init_mm.start_code = (unsigned long)_stext; |
514 | init_mm.end_code = (unsigned long) _etext; | 514 | init_mm.end_code = (unsigned long) _etext; |
515 | init_mm.end_data = (unsigned long) _edata; | 515 | init_mm.end_data = (unsigned long) _edata; |
516 | init_mm.brk = klimit; | 516 | init_mm.brk = klimit; |
diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S index 0afb9e31d2a0..b5a76bcd95a6 100644 --- a/arch/powerpc/kernel/vmlinux.lds.S +++ b/arch/powerpc/kernel/vmlinux.lds.S | |||
@@ -1,11 +1,9 @@ | |||
1 | #ifdef CONFIG_PPC64 | 1 | #ifdef CONFIG_PPC64 |
2 | #include <asm/page.h> | ||
3 | #define PROVIDE32(x) PROVIDE(__unused__##x) | 2 | #define PROVIDE32(x) PROVIDE(__unused__##x) |
4 | #else | 3 | #else |
5 | #define PAGE_SIZE 4096 | ||
6 | #define KERNELBASE CONFIG_KERNEL_START | ||
7 | #define PROVIDE32(x) PROVIDE(x) | 4 | #define PROVIDE32(x) PROVIDE(x) |
8 | #endif | 5 | #endif |
6 | #include <asm/page.h> | ||
9 | #include <asm-generic/vmlinux.lds.h> | 7 | #include <asm-generic/vmlinux.lds.h> |
10 | #include <asm/cache.h> | 8 | #include <asm/cache.h> |
11 | 9 | ||