CVE-2025-39908

Source
https://nvd.nist.gov/vuln/detail/CVE-2025-39908
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-39908.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2025-39908
Downstream
Published
2025-10-01T07:44:31.904Z
Modified
2025-12-02T19:43:39.014366Z
Summary
net: dev_ioctl: take ops lock in hwtstamp lower paths
Details

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

net: dev_ioctl: take ops lock in hwtstamp lower paths

ndo hwtstamp callbacks are expected to run under the per-device ops lock. Make the lower get/set paths consistent with the rest of ndo invocations.

Kernel log: WARNING: CPU: 13 PID: 51364 at ./include/net/netdevlock.h:70 netdevupdatefeatures+0x4bd/0xe60 ... RIP: 0010:netdevupdatefeatures+0x4bd/0xe60 ... Call Trace: <TASK> netdevupdatefeatures+0x1f/0x60 mlx5hwtstampset+0x181/0x290 [mlx5core] mlx5ehwtstampset+0x19/0x30 [mlx5core] devsethwtstampphylib+0x9f/0x220 devsethwtstampphylib+0x9f/0x220 devsethwtstamp+0x13d/0x240 devioctl+0x12f/0x4b0 sockioctl+0x171/0x370 _x64sysioctl+0x3f7/0x900 ? _syssetsockopt+0x69/0xb0 dosyscall64+0x6f/0x2e0 entrySYSCALL64afterhwframe+0x4b/0x53 ... </TASK> .... ---[ end trace 0000000000000000 ]---

Note that the mlx5hwtstampset and mlx5ehwtstampset functions shown in the trace come from an in progress patch converting the legacy ioctl to ndohwtstampget/set and are not present in mainline.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/39xxx/CVE-2025-39908.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
ffb7ed19ac0a9fa9ea79af1d7b42c03a10da98a5
Fixed
2d92fa0cdc02291de57f72170e8b60cef0cf5372
Fixed
686cab5a18e443e1d5f2abb17bed45837836425f

Affected versions

v6.*

v6.14
v6.14-rc5
v6.14-rc6
v6.14-rc7
v6.15
v6.15-rc1
v6.15-rc2
v6.15-rc3
v6.15-rc4
v6.15-rc5
v6.15-rc6
v6.15-rc7
v6.16
v6.16-rc1
v6.16-rc2
v6.16-rc3
v6.16-rc4
v6.16-rc5
v6.16-rc6
v6.16-rc7
v6.16.1
v6.16.2
v6.16.3
v6.16.4
v6.16.5
v6.16.6
v6.16.7
v6.17-rc1
v6.17-rc2
v6.17-rc3
v6.17-rc4

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
6.15.0
Fixed
6.16.8