CVE-2026-43211: Linux kernel · PCI: Fix pci_slot_trylock() error handling
Affects Linux kernelSource CVE Database V5
Not known to be exploited · CVSS 7.8 High · fixed in fbe06a3058114bf95a17a4941b205f4b321c6f0a : patch Linux kernel soon.
Data as of 26 Oct 2026, 11:20 UTC
- EPSS
- 0.1% chance of exploitation in 30 days – higher than 1% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- CISA SSVC
- Exploitation
- No evidence of active exploitation and no public proof of concept
- Automatable
- Attackers cannot reliably automate steps 1–4 of the kill chain
- Technical impact
- Total control over the software or total information disclosure
CISA SSVC assessment, 2026-10-16.
- Patch
- Available – fixed in fbe06a3058114bf95a17a4941b205f4b321c6f0a, ebb27b7399ab8b9eb1f792b329aa5f6250c590d4, bd435f4b738130d732ef64e0e57e45185f77165d +12
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HExploitation evidence
Disclosed: evidence found.
CVE published 6 May 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in– |
Description
In the Linux kernel, the following vulnerability has been resolved: PCI: Fix pci_slot_trylock() error handling Commit a4e772898f8b ("PCI: Add missing bridge lock to pci_bus_lock()") delegates the bridge device's pci_dev_trylock() to pci_bus_trylock() in pci_slot_trylock(), but it forgets to remove the corresponding pci_dev_unlock() when pci_bus_trylock() fails. Before a4e772898f8b, the code did: if (!pci_dev_trylock(dev)) /* <- lock bridge device */ goto unlock; if (dev->subordinate) { if (!pci_bus_trylock(dev->subordinate)) { pci_dev_unlock(dev); /* <- unlock bridge device */ goto unlock; } } After a4e772898f8b the bridge-device lock is no longer taken, but the pci_dev_unlock(dev) on the failure path was left in place, leading to the bug. This yields one of two errors: 1. A warning that the lock is being unlocked when no one holds it. 2. An incorrect unlock of a lock that belongs to another thread. Fix it by removing the now-redundant pci_dev_unlock(dev) on the failure path. [Same patch later posted by Keith at https://patch.msgid.link/20260116184150.3013258-1-kbusch@meta.com]
References
- git.kernel.org/stable/c/ebb27b7399ab8b9eb1f792b329aa5f6250c590d4 (opens in a new tab)
- git.kernel.org/stable/c/fbe06a3058114bf95a17a4941b205f4b321c6f0a (opens in a new tab)
- git.kernel.org/stable/c/943ed56606a7ab2fe5a99cad572dd17d484310c7 (opens in a new tab)
- git.kernel.org/stable/c/a19b61fdb958ffadbba85b43c991eb9fc70c1c1c (opens in a new tab)
- git.kernel.org/stable/c/0425aaf20b407d2f2cf3bf469808e4a35f9abb8b (opens in a new tab)
- git.kernel.org/stable/c/bd435f4b738130d732ef64e0e57e45185f77165d (opens in a new tab)
- git.kernel.org/stable/c/8b08ea9690b212b7bf7f12414039259cf34b1aa0 (opens in a new tab)
- git.kernel.org/stable/c/9368d1ee62829b08aa31836b3ca003803caf0b72 (opens in a new tab)