diff mbox series

[v4,24/30] riscv/kernel: update __show_regs to print shadow stack register

Message ID 20240912231650.3740732-25-debug@rivosinc.com (mailing list archive)
State Superseded
Headers show
Series riscv control-flow integrity for usermode | expand

Checks

Context Check Description
conchuod/vmtest-for-next-PR fail PR summary
conchuod/patch-24-test-1 fail .github/scripts/patches/tests/build_rv32_defconfig.sh took 111.51s
conchuod/patch-24-test-2 fail .github/scripts/patches/tests/build_rv64_clang_allmodconfig.sh took 956.43s
conchuod/patch-24-test-3 fail .github/scripts/patches/tests/build_rv64_gcc_allmodconfig.sh took 1158.88s
conchuod/patch-24-test-4 fail .github/scripts/patches/tests/build_rv64_nommu_k210_defconfig.sh took 18.71s
conchuod/patch-24-test-5 fail .github/scripts/patches/tests/build_rv64_nommu_virt_defconfig.sh took 19.97s
conchuod/patch-24-test-6 warning .github/scripts/patches/tests/checkpatch.sh took 0.43s
conchuod/patch-24-test-7 success .github/scripts/patches/tests/dtb_warn_rv64.sh took 41.44s
conchuod/patch-24-test-8 success .github/scripts/patches/tests/header_inline.sh took 0.01s
conchuod/patch-24-test-9 success .github/scripts/patches/tests/kdoc.sh took 0.52s
conchuod/patch-24-test-10 success .github/scripts/patches/tests/module_param.sh took 0.01s
conchuod/patch-24-test-11 success .github/scripts/patches/tests/verify_fixes.sh took 0.00s
conchuod/patch-24-test-12 success .github/scripts/patches/tests/verify_signedoff.sh took 0.04s

Commit Message

Deepak Gupta Sept. 12, 2024, 11:16 p.m. UTC
Updating __show_regs to print captured shadow stack pointer as well.
On tasks where shadow stack is disabled, it'll simply print 0.

Signed-off-by: Deepak Gupta <debug@rivosinc.com>
Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com>
---
 arch/riscv/kernel/process.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/arch/riscv/kernel/process.c b/arch/riscv/kernel/process.c
index f3c5b8f2c869..1a5d70977e5a 100644
--- a/arch/riscv/kernel/process.c
+++ b/arch/riscv/kernel/process.c
@@ -87,8 +87,8 @@  void __show_regs(struct pt_regs *regs)
 		regs->s8, regs->s9, regs->s10);
 	pr_cont(" s11: " REG_FMT " t3 : " REG_FMT " t4 : " REG_FMT "\n",
 		regs->s11, regs->t3, regs->t4);
-	pr_cont(" t5 : " REG_FMT " t6 : " REG_FMT "\n",
-		regs->t5, regs->t6);
+	pr_cont(" t5 : " REG_FMT " t6 : " REG_FMT " ssp : " REG_FMT "\n",
+		regs->t5, regs->t6, get_active_shstk(current));
 
 	pr_cont("status: " REG_FMT " badaddr: " REG_FMT " cause: " REG_FMT "\n",
 		regs->status, regs->badaddr, regs->cause);