diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2006-03-08 14:13:04 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2006-03-09 18:05:09 +0000 |
commit | bb7d83f74477b41a2dee71771805c8447cdaa70f (patch) | |
tree | 27ec3663ce4488fee15b48136eb173ff65b370f9 | |
parent | ec28f3065795ed3be7413368efd7f63d7b81e82d (diff) | |
download | op-kernel-dev-bb7d83f74477b41a2dee71771805c8447cdaa70f.zip op-kernel-dev-bb7d83f74477b41a2dee71771805c8447cdaa70f.tar.gz |
[MIPS] Discard .exit.text at runtime.
At times gcc will place bits of __exit functions into .rodata. If
compiled into the kernle itself we used to discard .exit.text - but
not the bits left in .rodata. While harmless this did at times result
in a large number of warnings. So until gcc fixes this, discard
.exit.text at runtime.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r-- | arch/mips/kernel/vmlinux.lds.S | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/mips/kernel/vmlinux.lds.S b/arch/mips/kernel/vmlinux.lds.S index ff699db..2ad0ced 100644 --- a/arch/mips/kernel/vmlinux.lds.S +++ b/arch/mips/kernel/vmlinux.lds.S @@ -106,6 +106,9 @@ SECTIONS .con_initcall.init : { *(.con_initcall.init) } __con_initcall_end = .; SECURITY_INIT + /* .exit.text is discarded at runtime, not link time, to deal with + references from .rodata */ + .exit.text : { *(.exit.text) } . = ALIGN(_PAGE_SIZE); __initramfs_start = .; .init.ramfs : { *(.init.ramfs) } @@ -133,7 +136,6 @@ SECTIONS /* Sections to be discarded */ /DISCARD/ : { - *(.exit.text) *(.exit.data) *(.exitcall.exit) |