In the Linux kernel, the following vulnerability has been resolved:
net: phylink: add lock for serializing concurrent pl->phydev writes with resolver
Currently phylink_resolve() protects itself against concurrent phylink_bringup_phy() or phylink_disconnect_phy() calls which modify pl->phydev by relying on pl->state_mutex.
The problem is that in phylink_resolve(), pl->state_mutex is in a lock inversion state with pl->phydev->lock. So pl->phydev->lock needs to be acquired prior to pl->state_mutex. But that requires dereferencing pl->phydev in the first place, and without pl->state_mutex, that is racy.
Hence the reason for the extra lock. Currently it is redundant, but it will serve a functional purpose once mutex_lock(&phy->lock) will be moved outside of the mutex_lock(&pl->state_mutex) section.
Another alternative considered would have been to let phylink_resolve() acquire the rtnl_mutex, which is also held when phylink_bringup_phy() and phylink_disconnect_phy() are called. But since phylink_disconnect_phy() runs under rtnl_lock(), it would deadlock with phylink_resolve() when calling flush_work(&pl->resolve). Additionally, it would have been undesirable because it would have unnecessarily blocked many other call paths as well in the entire kernel, so the smaller-scoped lock was preferred.
CVSS Details
- CVSS 3.1 Base Score: 7
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Oracle_linux | — | Upgrade kernel | Jan 15, 2026 | Oct 1, 2025 |
| Redhat_linux | — | Upgrade kernelNo solution existsUpgrade kernel-rt | Jan 15, 2026 | Oct 1, 2025 |
| Rocky_linux | — | Upgrade kernel-debugUpgrade kernel-modulesUpgrade kernel-rt-modules-coreUpgrade kernel-modules-extraUpgrade kernel-rt-coreUpgrade kernel-uki-virtUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-debug-develUpgrade perfUpgrade kernel-zfcpdump-modulesUpgrade python3-perfUpgrade kernel-modules-coreUpgrade kernel-zfcpdumpUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-debuginfoUpgrade kernel-rt-debug-modules-coreUpgrade kernel-devel-matchedUpgrade kernel-coreUpgrade kernel-rt-debug-modulesUpgrade kernel-debug-coreUpgrade kernel-debug-devel-matchedUpgrade kernel-tools-debuginfoUpgrade kernel-zfcpdump-develUpgrade perf-debuginfoUpgrade rtlaUpgrade libperfUpgrade kernel-debug-debuginfoUpgrade kernel-rt-modulesUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-debuginfoUpgrade kernel-debug-develUpgrade python3-perf-debuginfoUpgrade kernel-rt-develUpgrade kernel-rt-debugUpgrade libperf-debuginfoUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-zfcpdump-debuginfoUpgrade kernel-uki-virt-addonsUpgrade kernel-debug-modules-coreUpgrade kernel-debug-modules-extraUpgrade kernel-zfcpdump-coreUpgrade kernel-debuginfo-common-x86_64Upgrade rvUpgrade kernel-rt-debug-coreUpgrade kernelUpgrade kernel-develUpgrade kernel-rtUpgrade kernel-modules-extra-matchedUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade kernel-debug-uki-virtUpgrade kernel-debuginfo-common-s390xUpgrade kernel-rt-modules-extraUpgrade kernel-debug-modulesUpgrade kernel-rt-debug-debuginfoUpgrade kernel-tools-libs-devel | Jan 19, 2026 | Jan 17, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | Oct 1, 2025 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub