]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
powerpc: Transition to Secure-PLT, like most other OSs
authorJustin Hibbits <jhibbits@FreeBSD.org>
Tue, 25 Jun 2019 00:40:44 +0000 (00:40 +0000)
committerJustin Hibbits <jhibbits@FreeBSD.org>
Tue, 25 Jun 2019 00:40:44 +0000 (00:40 +0000)
commitf62da49b2f17f279ddba946bf4bc7ba7247273a5
tree041a7841c0913c7d28147defb90e33fda6390de3
parentda4961c796795b7337cd905b84be8dcf200d408c
powerpc: Transition to Secure-PLT, like most other OSs

Summary:
PowerPC has two PLT models: BSS-PLT and Secure-PLT.  BSS-PLT uses runtime
code generation to generate the PLT stubs.  Secure-PLT was introduced with
GCC 4.1 and Binutils 2.17 (base has GCC 4.2.1 and Binutils 2.17), and is a
more secure PLT format, using a read-only linkage table, with the dynamic
linker populating a non-executable index table.

This is the libc, rtld, and kernel support only.  The toolchain and build
parts will be updated separately.

Reviewed By: nwhitehorn, bdragon, pfg
Differential Revision: https://reviews.freebsd.org/D20598
MFC after: 1 month
contrib/gcc/config/rs6000/tramp.asm
lib/libc/powerpc/SYS.h
lib/libc/powerpc/gen/_ctx_start.S
lib/libc/powerpc/sys/cerror.S
libexec/rtld-elf/powerpc/reloc.c
libexec/rtld-elf/powerpc/rtld_start.S
libexec/rtld-elf/rtld.c
libexec/rtld-elf/rtld.h
sys/powerpc/powerpc/machdep.c