]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commit
powerpc/64: add stack protector support
authorChristophe Leroy <christophe.leroy@c-s.fr>
Thu, 27 Sep 2018 07:05:55 +0000 (07:05 +0000)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 3 Oct 2018 05:40:03 +0000 (15:40 +1000)
commit06ec27aea9fc84d9c6d879eb64b5bcf28a8a1eb7
tree74bcc3ec9f8ea5647aead31b19d287f720fd0ab5
parentc3ff2a5193fa61b1b284cfb1d79628814ed0e95a
powerpc/64: add stack protector support

On PPC64, as register r13 points to the paca_struct at all time,
this patch adds a copy of the canary there, which is copied at
task_switch.
That new canary is then used by using the following GCC options:
-mstack-protector-guard=tls
-mstack-protector-guard-reg=r13
-mstack-protector-guard-offset=offsetof(struct paca_struct, canary))

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/Kconfig
arch/powerpc/Makefile
arch/powerpc/include/asm/paca.h
arch/powerpc/include/asm/stackprotector.h
arch/powerpc/kernel/asm-offsets.c
arch/powerpc/kernel/entry_64.S