All vulnerabilities
CVE-2026-97963

Linux: net: stmmac: initialize ptp_lock at probe time

Linux LinuxOperating systems
CVSS
NoneNot scored
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.17%Chance of exploitation activity in the next 30 days, higher than 6% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in7ced87834f3a58761d4bbcabf8326478548e6a54Also 79fb5bcc50996964e076dffbdc24b7d2c06bd957, 420315413b29635de1d4ea4142e410e6465260f3 and 2 moreCVE List
Published25 Sep 2026Updated 19 Oct 2026CVE List

What fixes it

  • 7ced87834f3a58761d4bbcabf8326478548e6a54LinuxCVE List
  • 79fb5bcc50996964e076dffbdc24b7d2c06bd957LinuxCVE List
  • 420315413b29635de1d4ea4142e410e6465260f3LinuxCVE List
  • 25cc0096efba83b4e0e6fa50f03e9543b41e9d3dLinuxCVE List
  • 0338c68e22abd2ee509ec2e32508a50896618c32LinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

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

net: stmmac: initialize ptp_lock at probe time

priv->ptp_lock is only initialized in stmmac_ptp_register(), which runs during __stmmac_open(). However, the lock is also used while the interface is down and has never been opened: tc_taprio_configure() invokes the PTP gettime64() callback to compute the EST base time when offloading a TAPRIO schedule, and stmmac_get_time() takes priv->ptp_lock. Using an uninitialized rwlock is undefined behaviour. Move the rwlock_init() to __stmmac_dvr_probe(), together with the other private locks, so that ptp_lock is always valid regardless of the interface state.

Text from CVE List

Affected versions 16

  • Linuxaffected: b60189e0392fa06348911077ef281eb2b1047b6a before ee33e424d4932c70f103b94a46b685923f236f65CVE List
  • Linuxaffected: b60189e0392fa06348911077ef281eb2b1047b6a before 7ced87834f3a58761d4bbcabf8326478548e6a54CVE List
  • Linuxaffected: b60189e0392fa06348911077ef281eb2b1047b6a before 79fb5bcc50996964e076dffbdc24b7d2c06bd957CVE List
  • Linuxaffected: b60189e0392fa06348911077ef281eb2b1047b6a before 420315413b29635de1d4ea4142e410e6465260f3CVE List
  • Linuxaffected: b60189e0392fa06348911077ef281eb2b1047b6a before 25cc0096efba83b4e0e6fa50f03e9543b41e9d3dCVE List
  • Linuxaffected: b60189e0392fa06348911077ef281eb2b1047b6a before b1986595cf827c38ff929e22fbc9ca8f76379306CVE List
  • Linuxaffected: b60189e0392fa06348911077ef281eb2b1047b6a before 0338c68e22abd2ee509ec2e32508a50896618c32CVE List
  • Linuxaffected: 5.6CVE List
  • Linuxunaffected: all versions before 5.6CVE List
  • Linuxunaffected: 5.15.222 through 5.15.*CVE List
  • Linuxunaffected: 6.1.189 through 6.1.*CVE List
  • Linuxunaffected: 6.6.158 through 6.6.*CVE List
  • Linuxunaffected: 6.12.111 through 6.12.*CVE List
  • Linuxunaffected: 6.18.53 through 6.18.*CVE List
  • Linuxunaffected: 7.2.7 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 7