From f139fff6ae7063c1965fa3085bb2585d7d838d72 Mon Sep 17 00:00:00 2001 From: Kimplul Date: Wed, 30 Oct 2024 13:34:18 +0200 Subject: rpc actually marks and unmarks stack regions + Processes won't be able to read previous stack frames etc --- arch/riscv64/kernel/entry.S | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'arch/riscv64/kernel/entry.S') diff --git a/arch/riscv64/kernel/entry.S b/arch/riscv64/kernel/entry.S index f894e0d..48851d4 100644 --- a/arch/riscv64/kernel/entry.S +++ b/arch/riscv64/kernel/entry.S @@ -92,6 +92,9 @@ continue_trap: save_callee save_caller + csrr t0, CSR_SEPC + sr t0, offsetof_exec(tp) + mv a0, s10 /* get actual kernel stack into sp */ mv sp, tp @@ -117,6 +120,7 @@ handle_exception: csrr a0, CSR_SEPC csrr a1, CSR_STVAL csrr a2, CSR_SCAUSE + sr a0, offsetof_exec(tp) mv sp, tp call riscv_handle_exception -- cgit v1.3