[PATCH 1/1] lib: sbi: sse_event_get() may return NULL

Heinrich Schuchardt heinrich.schuchardt at canonical.com
Mon Apr 8 00:29:04 PDT 2024


sse_event_get() may return NULL. We should not dereference the return value
in sbi_sse_exit() without checking.

Fixes: c8cdf01d8f3a ("lib: sbi: Add support for Supervisor Software Events extension")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
---
 lib/sbi/sbi_sse.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/sbi/sbi_sse.c b/lib/sbi/sbi_sse.c
index a686692..f0729f9 100644
--- a/lib/sbi/sbi_sse.c
+++ b/lib/sbi/sbi_sse.c
@@ -1119,7 +1119,7 @@ void sbi_sse_exit(struct sbi_scratch *scratch)
 	for (i = 0; i < EVENT_COUNT; i++) {
 		e = sse_event_get(supported_events[i]);
 
-		if (e->attrs.hartid != current_hartid())
+		if (!e || e->attrs.hartid != current_hartid())
 			continue;
 
 		if (sse_event_state(e) > SBI_SSE_STATE_REGISTERED) {
-- 
2.43.0




More information about the opensbi mailing list