CVE-2026-23217: riscv: trace: fix snapshot deadlock with sbi ecall
In the Linux kernel, the following vulnerability has been resolved:
riscv: trace: fix snapshot deadlock with sbi ecall
If sbiecall.c's functions are traceable,
echo "sbiecall:snapshot" > /sys/kernel/tracing/setftracefilter
may get the kernel into a deadlock.
(Functions in sbiecall.c are excluded from tracing if CONFIGRISCVALTERNATIVEEARLY is set.)
sbiecall triggers a snapshot of the ringbuffer. The snapshot code raises an IPI interrupt, which results in another call to sbiecall and another snapshot...
All it takes to get into this endless loop is one initial sbiecall. On RISC-V systems without SSTC extension, the clock events in timer-riscv.c issue periodic sbi ecalls, making the problem easy to trigger.
Always exclude the sbiecall.c functions from tracing to fix the potential deadlock.
sbi ecalls can easiliy be logged via trace events, excluding ecall functions from function tracing is not a big limitation.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2026-23217?
CVE-2026-23217 has a medium severity rating due to the potential for snapshot deadlocks during sbi calls.
How do I fix CVE-2026-23217?
To fix CVE-2026-23217, update to the latest version of the Linux kernel where the vulnerability has been patched.
What systems are affected by CVE-2026-23217?
CVE-2026-23217 affects systems running vulnerable versions of the Linux kernel that utilize SBI ecall functionalities.
What are the potential impacts of CVE-2026-23217?
The potential impacts of CVE-2026-23217 include system deadlocks, leading to unresponsive states during SBI calls.
When was CVE-2026-23217 reported?
CVE-2026-23217 was reported as a vulnerability in the Linux kernel related to traceable SBI ecalls.