Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2023-52505

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

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 products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 8f73b37cf3fbda67ea1e579c3b5785da4e7aa2e3 to < 6f901f8448c6b25ed843796b114471d2a3fc5dfbaffected
  • 8f73b37cf3fbda67ea1e579c3b5785da4e7aa2e3 to < c2d7c79898b427d263c64a4841987eec131f2d4eaffected
  • 8f73b37cf3fbda67ea1e579c3b5785da4e7aa2e3 to < 139ad1143151a07be93bf741d4ea7c89e59f89ceaffected

Linux Linux

Default version status: affected

  • 5.18affected
  • 0 to < 5.18unaffected
  • 6.1.59 to ≤ 6.1.*unaffected
  • 6.5.8 to ≤ 6.5.*unaffected
  • 6.6 to ≤ *unaffected

References