summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2015-05-14 14:45:40 +1000
committerMichael Ellerman <mpe@ellerman.id.au>2015-05-14 16:59:21 +1000
commit5e95235ccd5442d4a4fe11ec4eb99ba1b7959368 (patch)
tree8e5e4e2a94475401ef359352b8e111959c37e246
parentffb2d78eca08a1451137583d4e435aecfd6af809 (diff)
downloadlwn-5e95235ccd5442d4a4fe11ec4eb99ba1b7959368.tar.gz
lwn-5e95235ccd5442d4a4fe11ec4eb99ba1b7959368.zip
powerpc: Align TOC to 256 bytes
Recent toolchains force the TOC to be 256 byte aligned. We need to enforce this alignment in our linker script, otherwise pointers to our TOC variables (__toc_start, __prom_init_toc_start) could be incorrect. If they are bad, we die a few hundred instructions into boot. Cc: stable@vger.kernel.org Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
-rw-r--r--arch/powerpc/kernel/vmlinux.lds.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S
index f096e72262f4..1db685104ffc 100644
--- a/arch/powerpc/kernel/vmlinux.lds.S
+++ b/arch/powerpc/kernel/vmlinux.lds.S
@@ -213,6 +213,7 @@ SECTIONS
*(.opd)
}
+ . = ALIGN(256);
.got : AT(ADDR(.got) - LOAD_OFFSET) {
__toc_start = .;
#ifndef CONFIG_RELOCATABLE