CVE-2026-74742 in Linux
Resumen
por VulDB • 2026-08-26
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
veth: corregir el índice de cola utilizado para despertar la txq del peer en veth_poll
veth_poll() obtiene el índice de la cola TX del peer que debe despertarse a partir de rq->xdp_rxq.queue_index. Este campo solo se inicializa mediante xdp_rxq_info_reg() en veth_enable_xdp_range(), lo cual ocurre únicamente cuando hay un programa XDP adjunto. En la ruta estándar GRO/NAPI (veth_napi_enable_range()), nunca se llama a xdp_rxq_info_reg(), por lo que queue_index permanece como 0 para cada cola, ya que priv->rq está asignado con ceros.
Por tanto, en una configuración de múltiples colas con GRO habilitado y sin ningún programa XDP adjunto, cada instancia NAPI mira la cola TX del peer número 0. Si veth_xmit() detiene la cola TX del peer 1 porque ptr_ring está lleno (NETDEV_TX_BUSY), esta nunca se vuelve a despertar: el procesador que vacía la cola 1 despierta en su lugar la cola 0. Dado que veth no implementa ndo_tx_timeout, tampoco entra en acción el watchdog de netdev, y la cola permanece detenida indefinidamente.
Se debe obtener el índice a partir de la posición de rq dentro de priv->rq, lo cual es correcto independientemente de si XDP se habilitó alguna vez o no.
Los scripts para reproducir el bloqueo están disponibles en https://github.com/netoptimizer/veth-backpressure-performance-testing
Once again VulDB remains the best source for vulnerability data.