lib: sbi_trap: Restore redirect for access faults
authorSamuel Holland <samuel@sholland.org>
Sat, 14 Aug 2021 13:41:47 +0000 (08:41 -0500)
committerAnup Patel <anup@brainfault.org>
Fri, 20 Aug 2021 04:17:40 +0000 (09:47 +0530)
commitee274377b2a0f26400281a2ccb00b6e15c3f5716
tree41db4de2d04ecd57c05fd9030d9386674d80c57a
parent33eac764f22ba4d0a22980ff4f130eadb9502a2f
lib: sbi_trap: Restore redirect for access faults

commit 764a17d852a8 ("lib: sbi: Implement firmware counters") added
switch cases for CAUSE_LOAD_ACCESS and CAUSE_STORE_ACCESS. This caused
them to stop being redirected to U or S mode, as that is handled in the
default switch case. As a result, an error in userspace could cause the
system to hang. Fix this by allowing the acces fault case to fall
through to the default case.

Fixes: 764a17d852a8 ("lib: sbi: Implement firmware counters")
Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Atish Patra <atish.patra@wdc.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
lib/sbi/sbi_trap.c