forked from Minki/linux
powerpc: Fix vmlinux.lds.S for 32-bit
We can't currently use asm-ppc/page.h in vmlinux.lds.S, so until we have a merged page.h, define PAGE_SIZE and KERNELBASE locally. Also gets rid of some dynamic executable cruft that we had for 32-bit. With -Ttext=$(KERNELBASE) this didn't cause any problem, but when we changed to putting . = KERNELBASE in the vmlinux.lds.S this cruft caused the text to get linked at 0xa0 instead of 0xc0000000. Oops. Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
5ad5707861
commit
c51e3a417b
@ -1,5 +1,10 @@
|
||||
#include <linux/config.h>
|
||||
#ifdef CONFIG_PPC64
|
||||
#include <asm/page.h>
|
||||
#else
|
||||
#define PAGE_SIZE 4096
|
||||
#define KERNELBASE CONFIG_KERNEL_START
|
||||
#endif
|
||||
#include <asm-generic/vmlinux.lds.h>
|
||||
|
||||
ENTRY(_stext)
|
||||
@ -22,31 +27,6 @@ SECTIONS
|
||||
. = KERNELBASE;
|
||||
|
||||
/* Read-only sections, merged into text segment: */
|
||||
#ifdef CONFIG_PPC32
|
||||
. = + SIZEOF_HEADERS;
|
||||
.interp : { *(.interp) }
|
||||
.hash : { *(.hash) }
|
||||
.dynsym : { *(.dynsym) }
|
||||
.dynstr : { *(.dynstr) }
|
||||
.rel.text : { *(.rel.text) }
|
||||
.rela.text : { *(.rela.text) }
|
||||
.rel.data : { *(.rel.data) }
|
||||
.rela.data : { *(.rela.data) }
|
||||
.rel.rodata : { *(.rel.rodata) }
|
||||
.rela.rodata : { *(.rela.rodata) }
|
||||
.rel.got : { *(.rel.got) }
|
||||
.rela.got : { *(.rela.got) }
|
||||
.rel.ctors : { *(.rel.ctors) }
|
||||
.rela.ctors : { *(.rela.ctors) }
|
||||
.rel.dtors : { *(.rel.dtors) }
|
||||
.rela.dtors : { *(.rela.dtors) }
|
||||
.rel.bss : { *(.rel.bss) }
|
||||
.rela.bss : { *(.rela.bss) }
|
||||
.rel.plt : { *(.rel.plt) }
|
||||
.rela.plt : { *(.rela.plt) }
|
||||
/* .init : { *(.init) } =0*/
|
||||
.plt : { *(.plt) }
|
||||
#endif
|
||||
.text : {
|
||||
*(.text .text.*)
|
||||
SCHED_TEXT
|
||||
|
Loading…
Reference in New Issue
Block a user