CVE-2026-80953 i3c: master: adi: initialize the lock before enabling interrupts
A race condition in the Linux kernel I3C master driver allows a pending interrupt to access an uninitialized lock, potentially causing a system crash.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-80953?
CVE-2026-80953 is a high-severity vulnerability in Linux, published on 11 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
i3c: master: adi: initialize the lock before enabling interrupts
adi_i3c_master_probe() requests the IRQ and unmasks REG_IRQ_PENDING_CMDR before the controller's IBI state, transfer queue list and transfer queue lock are initialized. A pending CMDR interrupt can therefore run adi_i3c_master_irq() and take master->xferqueue.lock before the dynamic lock has been initialized.
This issue was found by our static analysis tool and then manually reviewed against the current tree.
The grounded PoC kept the probe ordering and the IRQ path adi_i3c_master_probe() -> adi_i3c_master_irq() -> xferqueue.lock, with a pending CMDR interrupt arriving after REG_IRQ_PENDING_CMDR is unmasked. Lockdep reported:
INFO: trying to register non-static key. you didn't initialize this object before use? lock_acquire+0xbb/0x290 _raw_spin_lock_irqsave+0x36/0x60 adi_i3c_master_irq+0x32/0x56 [vuln_msv] adi_i3c_master_probe+0x5a/0xf47 [vuln_msv]
Initialize the transfer queue and IBI state before requesting and unmasking the IRQ.
Which versions are affected by CVE-2026-80953?
How do I fix CVE-2026-80953?
Apply the vendor's patch.
Is CVE-2026-80953 being exploited?
There is no known exploitation of CVE-2026-80953 in the wild and no public exploit code.
Sources
Also known as BELL-CVE-2026-80953, DEBIAN-CVE-2026-80953, GHSA-8qpp-p36x-27xr, UBUNTU-CVE-2026-80953.