CVE-2026-80950
nicheUse-After-Free in Linux Kernel Renesas I3C Driver Interrupt Handler
The Linux kernel's Renesas I3C driver contains a use-after-free in its interrupt handling path: when a data transfer times out, the waiting thread dequeues and frees the 'struct renesas_i3c_xfer', but a late interrupt can still fire and access that already-freed memory, causing kernel crashes. The flaw is triggered by racing a transfer timeout against interrupt delivery on systems using Renesas I3C hardware, and a local attacker with low privileges could exploit the resulting kernel memory corruption for a crash at minimum, with CVSS 3.1 rating the worst case as high impact to confidentiality, integrity, and availability (7.8). Affected systems are limited to those running kernels with the Renesas I3C driver in use, typically embedded and automotive platforms built on Renesas SoCs (such as R-Car-based designs). The fix validates that the transfer is still valid in the interrupt handler and clears status flags while disabling interrupts to prevent re-triggering. Exploitation status: not in the CISA KEV catalog and no public proof-of-concept is known.
What to do: Apply a kernel update that includes the upstream fix (which validates the transfer in the interrupt handler and disables interrupts on timeout) as soon as your distro or vendor ships it. Verify whether your systems actually use the Renesas I3C driver (check loaded modules and device tree on Renesas/R-Car hardware); systems without this hardware are not exposed. Because the attack requires local access, restrict unprivileged local accounts and container workloads on affected embedded devices until patched.
| Linux kernel (drivers/i3c/master/i3c-master-renesas.c, Renesas I3C driver) | — |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
In the Linux kernel, the following vulnerability has been resolved: i3c: renesas: Check that the transfer is valid before accessing it The Renesas I3C driver uses an asynchronous model to transfer data. It prepares a struct renesas_i3c_xfer, enqueues it, and waits for completion. The interrupt handler dequeues the transfer, updates/uses it, and signals the waiting thread. If the completion times out, the waiting thread dequeues the transfer and free it. If an interrupt fires after that, the handler may access freed memory, leading to crashes. Check that the transfer is still valid before accessing it in the interrupt handler. With it clear any status flags and disable all the interrupts to avoid triggering the same interrupts again.
- Vector
- CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
In the news0 stories
No ingested article mentions this CVE yet.