From: Anton Blanchard Date: Thu, 14 May 2015 04:45:40 +0000 (+1000) Subject: powerpc: Align TOC to 256 bytes X-Git-Tag: v2.6.32.68~38 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6c43247b73b100ba8ff51bc06997a7c1fd157bbc;p=thirdparty%2Fkernel%2Fstable.git powerpc: Align TOC to 256 bytes commit 5e95235ccd5442d4a4fe11ec4eb99ba1b7959368 upstream. 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. Signed-off-by: Anton Blanchard Signed-off-by: Michael Ellerman Signed-off-by: Ben Hutchings (cherry picked from commit 303241421684cdd2f9e931bc42b9de811320e7fd) Signed-off-by: Willy Tarreau --- diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S index dcd01c82e7013..5c2ac91980ada 100644 --- a/arch/powerpc/kernel/vmlinux.lds.S +++ b/arch/powerpc/kernel/vmlinux.lds.S @@ -215,6 +215,7 @@ SECTIONS *(.opd) } + . = ALIGN(256); .got : AT(ADDR(.got) - LOAD_OFFSET) { __toc_start = .; *(.got)