]> git.baikalelectronics.ru Git - kernel.git/commit
riscv: Initialize thread pointer before calling C functions
authorAlexandre Ghiti <alexandre.ghiti@canonical.com>
Mon, 6 Dec 2021 10:46:56 +0000 (11:46 +0100)
committerPalmer Dabbelt <palmer@rivosinc.com>
Thu, 2 Jun 2022 04:46:23 +0000 (21:46 -0700)
commitde15609064467ee2edb91abca8a2de48956023dd
tree60dedb666a8c39534bb147af6edf058e60b8a17d
parent97586dccdb5b563683a8e63bca75eb40b3c9024d
riscv: Initialize thread pointer before calling C functions

Because of the stack canary feature that reads from the current task
structure the stack canary value, the thread pointer register "tp" must
be set before calling any C function from head.S: by chance, setup_vm
and all the functions that it calls does not seem to be part of the
functions where the canary check is done, but in the following commits,
some functions will.

Fixes: 312d35f63b9b1c0c ("riscv: Add STACKPROTECTOR supported")
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
Cc: stable@vger.kernel.org
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/kernel/head.S