summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDeepak Gupta <[email protected]>2024-09-16 11:23:56 -0700
committerAnup Patel <[email protected]>2024-09-23 18:59:24 +0530
commit110524441a827e026db3547ed03c5723b9c9e211 (patch)
tree484267e5de9c18062739d8a0fc78990d08043e6b
parentc0804ed49a6ef1d2b757a97baf3f802fd98ae517 (diff)
lib: sbi: sw check exception delegation
zicfiss and zicfilp introduces new exception (cause=18). Delegate this exception to S mode because cfi violations in U / S will be reported via this exception. Signed-off-by: Deepak Gupta <[email protected]> Reviewed-by: Samuel Holland <[email protected]> Reviewed-by: Atish Patra <[email protected]>
-rw-r--r--lib/sbi/sbi_hart.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/sbi/sbi_hart.c b/lib/sbi/sbi_hart.c
index 73f2c7b1..d9aef31a 100644
--- a/lib/sbi/sbi_hart.c
+++ b/lib/sbi/sbi_hart.c
@@ -207,7 +207,8 @@ static int delegate_traps(struct sbi_scratch *scratch)
if (sbi_platform_has_mfaults_delegation(plat))
exceptions |= (1U << CAUSE_FETCH_PAGE_FAULT) |
(1U << CAUSE_LOAD_PAGE_FAULT) |
- (1U << CAUSE_STORE_PAGE_FAULT);
+ (1U << CAUSE_STORE_PAGE_FAULT) |
+ (1U << CAUSE_SW_CHECK_EXCP);
/*
* If hypervisor extension available then we only handle hypervisor