diff options
author | Anton Blanchard <anton@samba.org> | 2015-05-14 14:45:40 +1000 |
---|---|---|
committer | Zefan Li <lizefan@huawei.com> | 2015-09-18 09:20:41 +0800 |
commit | 232efafc884cb59c406931f047418434ca2edecc (patch) | |
tree | 0236a10038325d4ca6c60b5486d7a866672673b3 | |
parent | dacca44eee45361fe42111a803a0aafb782bd960 (diff) | |
download | lwn-232efafc884cb59c406931f047418434ca2edecc.tar.gz lwn-232efafc884cb59c406931f047418434ca2edecc.zip |
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 <anton@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Zefan Li <lizefan@huawei.com>
-rw-r--r-- | arch/powerpc/kernel/vmlinux.lds.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S index 7703569b5d4f..6be807d29b1d 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 = .; *(.got) |