CVE-2026-43382: Linux kernel · batman-adv: Avoid double-rtnl_lock ELP metric worker
Affects Linux kernelSource GCVE Database
Not known to be exploited.
Data as of 11 Nov 2026, 23:24 UTC
Rated by Threat Radar · No CVSS score from NVD or the CNA
Thin evidence
One scorer or none- EPSS
- 0.09% chance of exploitation in 30 days – higher than 0% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Exploitation evidence
Disclosed: evidence found.
CVE published 8 May 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: 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 11 Nov 2026.
What to do
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| Linux Linux | Affected
| Fixed in– |
Description
In the Linux kernel, the following vulnerability has been resolved: batman-adv: Avoid double-rtnl_lock ELP metric worker batadv_v_elp_get_throughput() might be called when the RTNL lock is already held. This could be problematic when the work queue item is cancelled via cancel_delayed_work_sync() in batadv_v_elp_iface_disable(). In this case, an rtnl_lock() would cause a deadlock. To avoid this, rtnl_trylock() was used in this function to skip the retrieval of the ethtool information in case the RTNL lock was already held. But for cfg80211 interfaces, batadv_get_real_netdev() was called - which also uses rtnl_lock(). The approach for __ethtool_get_link_ksettings() must also be used instead and the lockless version __batadv_get_real_netdev() has to be called.
References
- git.kernel.org/stable/c/4c3ae249431b4fcb315d7dfb4c3a13f9e443fd9b (opens in a new tab)
- git.kernel.org/stable/c/192f40ad8a7dac58dae9199a065dbf7e6e67b75b (opens in a new tab)
- git.kernel.org/stable/c/fa7b4edfbabdf9235b0ab4bea297fc12b3bec9ca (opens in a new tab)
- git.kernel.org/stable/c/f3ca45673dab0514a887231de6f3243a699d5bfd (opens in a new tab)
- git.kernel.org/stable/c/b7e5d8ddfdf1d6e9e0808d1adf7736a107372d77 (opens in a new tab)
- git.kernel.org/stable/c/2ab9f2531d37775cd79228c1f5d80e6bd08d11d3 (opens in a new tab)
- git.kernel.org/stable/c/77808fe7d03ad0062840b95f431869a8b3d88b24 (opens in a new tab)
- git.kernel.org/stable/c/cfc83a3c71517b59c1047db57da31e26a9dc2f33 (opens in a new tab)