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.
References
Configurations
Configuration 1 (hide)
|
History
No history.
Information
Published : 2024-03-02 22:15
Updated : 2025-01-13 18:48
NVD link : CVE-2023-52505
Mitre link : CVE-2023-52505
CVE.ORG link : CVE-2023-52505
JSON object : View
Products Affected
linux
- linux_kernel
CWE
CWE-667
Improper Locking
