summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMichael Ellerman <mpe@ellerman.id.au>2017-03-07 06:14:49 +0100
committerMichael Ellerman <mpe@ellerman.id.au>2017-03-08 00:39:32 +0100
commit97ee351b50a49717543533cfb85b4bf9d88c9680 (patch)
tree1fc6fd4f091418625cf5bc13dd995aa3e21eaf2c /arch
parentMerge tag 'powerpc-4.11-3' of git://git.kernel.org/pub/scm/linux/kernel/git/p... (diff)
downloadlinux-97ee351b50a49717543533cfb85b4bf9d88c9680.tar.xz
linux-97ee351b50a49717543533cfb85b4bf9d88c9680.zip
powerpc/boot: Fix zImage TOC alignment
Recent toolchains force the TOC to be 256 byte aligned. We need to enforce this alignment in the zImage linker script, otherwise pointers to our TOC variables (__toc_start) could be incorrect. If the actual start of the TOC and __toc_start don't have the same value we crash early in the zImage wrapper. Cc: stable@vger.kernel.org Suggested-by: Alan Modra <amodra@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/boot/zImage.lds.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/boot/zImage.lds.S b/arch/powerpc/boot/zImage.lds.S
index 861e72109df2..f080abfc2f83 100644
--- a/arch/powerpc/boot/zImage.lds.S
+++ b/arch/powerpc/boot/zImage.lds.S
@@ -68,6 +68,7 @@ SECTIONS
}
#ifdef CONFIG_PPC64_BOOT_WRAPPER
+ . = ALIGN(256);
.got :
{
__toc_start = .;