]> git.itanic.dy.fi Git - linux-stable/commit
stackprotector: actually use get_random_canary()
authorJason A. Donenfeld <Jason@zx2c4.com>
Sun, 23 Oct 2022 20:14:23 +0000 (22:14 +0200)
committerJason A. Donenfeld <Jason@zx2c4.com>
Fri, 18 Nov 2022 01:18:10 +0000 (02:18 +0100)
commit622754e84b106a131fbac3f336bb45abf218849b
treee5371bb7a3f4aad8f9a4d168d79e73776c24b620
parentb3883a9a1f09e7b41f4dcb1bbd7262216a62d253
stackprotector: actually use get_random_canary()

The RNG always mixes in the Linux version extremely early in boot. It
also always includes a cycle counter, not only during early boot, but
each and every time it is invoked prior to being fully initialized.
Together, this means that the use of additional xors inside of the
various stackprotector.h files is superfluous and over-complicated.
Instead, we can get exactly the same thing, but better, by just calling
`get_random_canary()`.

Acked-by: Guo Ren <guoren@kernel.org> # for csky
Acked-by: Catalin Marinas <catalin.marinas@arm.com> # for arm64
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
arch/arm/include/asm/stackprotector.h
arch/arm64/include/asm/stackprotector.h
arch/csky/include/asm/stackprotector.h
arch/mips/include/asm/stackprotector.h
arch/powerpc/include/asm/stackprotector.h
arch/riscv/include/asm/stackprotector.h
arch/sh/include/asm/stackprotector.h
arch/x86/include/asm/stackprotector.h
arch/xtensa/include/asm/stackprotector.h