CVE-2025-39854

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.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc4:*:*:*:*:*:*

History

19 Oct 2026, 21:10

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta: ice: corrige el acceso NULL de tx->in_use en ice_ll_ts_intr Las versiones recientes del firmware E810 tienen soporte para una interrupción adicional para manejar el informe de las marcas de tiempo Tx de 'baja latencia' provenientes de la interfaz de firmware especializada de baja latencia. En lugar de sondear los registros, el software puede esperar hasta que se active la interrupción de baja latencia. Esta lógica hace uso de la estructura de seguimiento de marcas de tiempo Tx, ice_ptp_tx, ya que utiliza el mismo mapa de bits 'ready' para rastrear qué marcas de tiempo Tx se completan. Desafortunadamente, la función ice_ll_ts_intr() no verifica si el rastreador está inicializado antes de su primer acceso. Esto resulta en errores de desreferencia NULL o uso después de liberación similares a los problemas corregidos en la función ice_ptp_ts_irq(). Soluciona esto verificando solo el mapa de bits in_use (y otros campos) si el rastreador está marcado como inicializado. El flujo de reinicio borrará el campo init bajo bloqueo antes de desmantelar el rastreador, evitando así cualquier uso después de liberación o acceso NULL.

Information

Published : 2025-09-19 16:15

Updated : 2026-10-19 21:10


NVD link : CVE-2025-39854

Mitre link : CVE-2025-39854

CVE.ORG link : CVE-2025-39854


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-416

Use After Free