What’s Vulnerable › Vulnerabilities
CVE-2025-39854: ice: fix NULL access of tx->in_use in ice_ll_ts_intr
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-09-19 · updated 2026-10-19
- Weakness: CWE-416
Description
In the Linux kernel, the following vulnerability has been resolved: ice: fix NULL access of tx->in_use in ice_ll_ts_intr Recent versions of the E810 firmware have support for an extra interrupt to handle report of the "low latency" Tx timestamps coming from the specialized low latency firmware interface. Instead of polling the registers, software can wait until the low latency interrupt is fired. This logic makes use of the Tx timestamp tracking structure, ice_ptp_tx, as it uses the same "ready" bitmap to track which Tx timestamps complete. Unfortunately, the ice_ll_ts_intr() function does not check if the tracker is initialized before its first access. This results in NULL dereference or use-after-free bugs similar to the issues fixed in the ice_ptp_ts_irq() function. Fix this by only checking the in_use bitmap (and other fields) if the tracker is marked as initialized. The reset flow will clear the init field under lock before it tears the tracker down, thus preventing any use-after-free or NULL access.
Affected products
- Linux kernel: from 6.8 before 6.12.46; from 6.13 before 6.16.6; 6.17-rc1, 6.17-rc2, 6.17-rc3, 6.17-rc4 — fixed in 6.12.46, 6.16.6
How to fix
Upgrade to a fixed version: Linux kernel 6.12.46, 6.16.6. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/2cde98a02da958357fe240a6ba269b69d913b6ba
- https://git.kernel.org/stable/c/923c267bdbb64f65bc1149d184efcf8b047d7d64
- https://git.kernel.org/stable/c/f6486338fde3f04ed0ec59fe67a69a208c32734f
Get alerted when CVE-2025-39854 or the next vulnerability affects your stack