diff --git a/arch/risc-v/src/common/riscv_exception_common.S b/arch/risc-v/src/common/riscv_exception_common.S index 90359470314..7bcf2d2d72a 100644 --- a/arch/risc-v/src/common/riscv_exception_common.S +++ b/arch/risc-v/src/common/riscv_exception_common.S @@ -231,7 +231,11 @@ return_from_exception: load_ctx sp +#ifdef CONFIG_ARCH_KERNEL_STACK REGLOAD sp, REG_SP(sp) /* restore original sp */ +#else + addi sp, sp, XCPTCONTEXT_SIZE +#endif /* Return from exception */