lib: sbi: fix sse_event_inject() status setting

sse_event_inject() currently sets all status bits to 1 except for
SBI_SSE_ATTR_STATUS_PENDING_OFFSET which it sets to zero. Instead of
overwriting all the values of the status bits, sse_event_inject() is
only expected to clear SBI_SSE_ATTR_STATUS_PENDING_OFFSET. Fix
sse_event_inject() to only do the clearing.

Signed-off-by: Charlie Jenkins <thecharlesjenkins@gmail.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Link: https://lore.kernel.org/r/20260302-event_inject_fix-v1-1-e88952b03aa4@gmail.com
Signed-off-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
Charlie Jenkins
2026-03-02 14:54:58 -08:00
committed by Anup Patel
parent b5348006e9
commit 6d5b2b9b05

View File

@@ -548,7 +548,7 @@ static void sse_event_inject(struct sbi_sse_event *e,
sse_event_set_state(e, SBI_SSE_STATE_RUNNING);
e->attrs.status = ~BIT(SBI_SSE_ATTR_STATUS_PENDING_OFFSET);
e->attrs.status &= ~BIT(SBI_SSE_ATTR_STATUS_PENDING_OFFSET);
i_ctx->a6 = regs->a6;
i_ctx->a7 = regs->a7;