4.7

CVE-2023-52505

phy: lynx-28g: serialize concurrent phy_set_mode_ext() calls to shared registers

In the Linux kernel, the following vulnerability has been resolved:

phy: lynx-28g: serialize concurrent phy_set_mode_ext() calls to shared registers

The protocol converter configuration registers PCC8, PCCC, PCCD
(implemented by the driver), as well as others, control protocol
converters from multiple lanes (each represented as a different
struct phy). So, if there are simultaneous calls to phy_set_mode_ext()
to lanes sharing the same PCC register (either for the "old" or for the
"new" protocol), corruption of the values programmed to hardware is
possible, because lynx_28g_rmw() has no locking.

Add a spinlock in the struct lynx_28g_priv shared by all lanes, and take
the global spinlock from the phy_ops :: set_mode() implementation. There
are no other callers which modify PCC registers.
Daten sind bereitgestellt durch National Vulnerability Database (NVD)
Linux ≫ Linux Kernel Version >= 5.18 < 6.1.59
Linux ≫ Linux Kernel Version >= 6.2 < 6.5.8
Linux ≫ Linux Kernel Version 6.6 Update rc1
Linux ≫ Linux Kernel Version 6.6 Update rc2
Linux ≫ Linux Kernel Version 6.6 Update rc3
Linux ≫ Linux Kernel Version 6.6 Update rc4
Linux ≫ Linux Kernel Version 6.6 Update rc5
VulnDex Vulnerability Enrichment
Diese Information steht angemeldeten Benutzern zur Verfügung. Login Login
Zu dieser CVE wurde keine Warnung gefunden.
EPSS Metriken
Typ Quelle Score Percentile
EPSS FIRST.org 0.17% 0.064
CVSS Metriken
Quelle Base Score Exploit Score Impact Score Vector String
NIST 4.7 1 3.6
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
CWE-667 Improper Locking

The product does not properly acquire or release a lock on a resource, leading to unexpected resource state changes and behaviors.

https://git.kernel.org/stable/c/139ad1143151a07be93bf741d4ea7c89e59f89ce
Patch
https://git.kernel.org/stable/c/6f901f8448c6b25ed843796b114471d2a3fc5dfb
Patch
https://git.kernel.org/stable/c/c2d7c79898b427d263c64a4841987eec131f2d4e
Patch