-
- Downloads
You need to sign in or sign up before continuing.
gcc-plugins: arm-ssp: Prepare for THREAD_INFO_IN_TASK support
We will be enabling THREAD_INFO_IN_TASK support for ARM, which means that we can no longer load the stack canary value by masking the stack pointer and taking the copy that lives in thread_info. Instead, we will be able to load it from the task_struct directly, by using the TPIDRURO register which will hold the current task pointer when THREAD_INFO_IN_TASK is in effect. This is much more straight-forward, and allows us to declutter this code a bit while at it. Note that this means that ARMv6 (non-v6K) SMP systems can no longer use this feature, but those are quite rare to begin with, so this is a reasonable trade off. Reviewed-by:Kees Cook <keescook@chromium.org> Signed-off-by:
Ard Biesheuvel <ardb@kernel.org> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Tested-by:
Amit Daniel Kachhap <amit.kachhap@arm.com>
Showing
- arch/arm/Kconfig 1 addition, 1 deletionarch/arm/Kconfig
- arch/arm/Makefile 1 addition, 4 deletionsarch/arm/Makefile
- arch/arm/include/asm/stackprotector.h 0 additions, 2 deletionsarch/arm/include/asm/stackprotector.h
- arch/arm/include/asm/thread_info.h 0 additions, 3 deletionsarch/arm/include/asm/thread_info.h
- arch/arm/kernel/asm-offsets.c 0 additions, 4 deletionsarch/arm/kernel/asm-offsets.c
- arch/arm/kernel/process.c 0 additions, 4 deletionsarch/arm/kernel/process.c
- scripts/gcc-plugins/arm_ssp_per_task_plugin.c 6 additions, 21 deletionsscripts/gcc-plugins/arm_ssp_per_task_plugin.c
Loading
Please register or sign in to comment