]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: enable per-task stack canaries
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Wed, 12 Dec 2018 12:08:44 +0000 (13:08 +0100)
committerWill Deacon <will.deacon@arm.com>
Wed, 12 Dec 2018 18:45:31 +0000 (18:45 +0000)
commit0145e94a834b430ae8d7fd9654e13e7acd72d5a1
treeddf7b68d14a504fe97fbdefe00bf8a3296590cc5
parent632f91389aefd6eec9a6b221c86e337f69e3ed51
arm64: enable per-task stack canaries

This enables the use of per-task stack canary values if GCC has
support for emitting the stack canary reference relative to the
value of sp_el0, which holds the task struct pointer in the arm64
kernel.

The $(eval) extends KBUILD_CFLAGS at the moment the make rule is
applied, which means asm-offsets.o (which we rely on for the offset
value) is built without the arguments, and everything built afterwards
has the options set.

Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/Kconfig
arch/arm64/Makefile
arch/arm64/include/asm/stackprotector.h
arch/arm64/kernel/asm-offsets.c
arch/arm64/kernel/process.c