summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2004-10-19 18:33:54 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-10-19 18:33:54 -0700
commit3a0940449590c467fdfb2f7160effc85c0dcf640 (patch)
tree6e4b2585fb585e33ea5f8121eb705c5d50a44fd4
parent7830551e26b1fd73891b40474e8a9fb95342b465 (diff)
[PATCH] M68k: don't emit empty stack program header in vmlinux
Recent versions of ld add an empty stack program header to the kernel image, which makes it incompatible with current m68k bootstrap loaders. Modify the linker script to make sure we see only the program headers that are really needed. (from Roman Zippel) Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--arch/m68k/kernel/vmlinux-std.lds4
-rw-r--r--arch/m68k/kernel/vmlinux.lds.S6
2 files changed, 7 insertions, 3 deletions
diff --git a/arch/m68k/kernel/vmlinux-std.lds b/arch/m68k/kernel/vmlinux-std.lds
index 42aeea9fcb1e..e58654f3f8dd 100644
--- a/arch/m68k/kernel/vmlinux-std.lds
+++ b/arch/m68k/kernel/vmlinux-std.lds
@@ -15,7 +15,7 @@ SECTIONS
SCHED_TEXT
*(.fixup)
*(.gnu.warning)
- } = 0x4e75
+ } :text = 0x4e75
. = ALIGN(16); /* Exception table */
__start___ex_table = .;
@@ -34,7 +34,7 @@ SECTIONS
.bss : { *(.bss) } /* BSS */
. = ALIGN(16);
- .data.cacheline_aligned : { *(.data.cacheline_aligned) }
+ .data.cacheline_aligned : { *(.data.cacheline_aligned) } :data
_edata = .; /* End of data section */
diff --git a/arch/m68k/kernel/vmlinux.lds.S b/arch/m68k/kernel/vmlinux.lds.S
index 48e85d1d919e..497b924f3c86 100644
--- a/arch/m68k/kernel/vmlinux.lds.S
+++ b/arch/m68k/kernel/vmlinux.lds.S
@@ -1,5 +1,9 @@
#include <linux/config.h>
-
+PHDRS
+{
+ text PT_LOAD FILEHDR PHDRS FLAGS (7);
+ data PT_LOAD FLAGS (7);
+}
#ifdef CONFIG_SUN3
#include "vmlinux-sun3.lds"
#else