CVEvulnerability

CVE-2023-52505

4.7 MEDIUM Published 2024-03-02 Modified 2026-06-17 Official page ↗
Status
Analyzed
Published
2024-03-02
Last modified
2026-06-17
Assigner
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS 3.1 ([email protected])
4.7 MEDIUM — CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-667

Description

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.

Affected configurations

• linux linux kernel (>= 5.18 < 6.1.59) • linux linux kernel (>= 6.2 < 6.5.8) • linux linux kernel 6.6

Related

Weakness · CWE (1)

  • CWE-667 Improper Locking weakness

References