summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorNicolas Pitre <nico@cam.org>2005-10-13 22:04:37 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2005-10-13 22:04:37 +0100
commit13b1f64c16e2eb96a021b49cf3986528046ba3dc (patch)
treeb8220efc2177dc7fb041b9490a42b36f7bfeb177 /arch
parent50688ea9ed6fe154058c065bc7dc60980533a2c8 (diff)
downloadlinux-stable-13b1f64c16e2eb96a021b49cf3986528046ba3dc.tar.gz
linux-stable-13b1f64c16e2eb96a021b49cf3986528046ba3dc.tar.bz2
linux-stable-13b1f64c16e2eb96a021b49cf3986528046ba3dc.zip
[ARM] 3008/1: the exception table is not read-only
Patch from Nicolas Pitre ... and therefore should not live in the .text section. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/kernel/vmlinux.lds.S15
1 files changed, 8 insertions, 7 deletions
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S
index 08e58ecd44be..0d5db5279c5c 100644
--- a/arch/arm/kernel/vmlinux.lds.S
+++ b/arch/arm/kernel/vmlinux.lds.S
@@ -89,13 +89,6 @@ SECTIONS
*(.got) /* Global offset table */
}
- . = ALIGN(16);
- __ex_table : { /* Exception table */
- __start___ex_table = .;
- *(__ex_table)
- __stop___ex_table = .;
- }
-
RODATA
_etext = .; /* End of text and rodata section */
@@ -138,6 +131,14 @@ SECTIONS
*(.data.cacheline_aligned)
/*
+ * The exception fixup table (might need resorting at runtime)
+ */
+ . = ALIGN(32);
+ __start___ex_table = .;
+ *(__ex_table)
+ __stop___ex_table = .;
+
+ /*
* and the usual data section
*/
*(.data)