CVE-2026-74742
Received Received - Intake

Denial of Service in Linux Kernel veth Driver

Vulnerability report for CVE-2026-74742, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-26

Last updated on: 2026-08-26

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: veth: fix queue index used to wake the peer txq in veth_poll veth_poll() derives the index of the peer TX queue to wake from rq->xdp_rxq.queue_index. That field is only initialized by xdp_rxq_info_reg() in veth_enable_xdp_range(), which runs only when an XDP program is attached. On the plain GRO/NAPI path (veth_napi_enable_range()) xdp_rxq_info_reg() is never called, so queue_index stays 0 for every queue, as priv->rq is zero-allocated. So in a multi-queue setup with GRO enabled and no XDP program attached, every NAPI instance looks at the peer's TX queue 0. If veth_xmit() stops peer TX queue 1 because the ptr_ring is full (NETDEV_TX_BUSY), nothing ever wakes it again: the poller draining queue 1 wakes queue 0 instead. veth implements no ndo_tx_timeout, so the netdev watchdog does not kick in either, and the queue stays stopped indefinitely. Derive the index from the position of the rq within priv->rq instead, which is correct regardless of whether XDP was ever enabled. Scripts to reproduce the stall are available at https://github.com/netoptimizer/veth-backpressure-performance-testing

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-26
Last Modified
2026-08-26
Generated
2026-08-26
AI Q&A
2026-08-26
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
linux_kernel linux_kernel *

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability in the Linux kernel involves a flaw in the veth driver where the wrong queue index is used to wake a peer's transmit queue during polling. This happens when GRO is enabled without an XDP program attached, causing multi-queue setups to stall indefinitely because the wrong queue is woken up.

Detection Guidance

This vulnerability affects multi-queue veth setups with GRO enabled and no XDP program attached. Check if your system uses veth interfaces with multiple queues by running: ip link show. If veth interfaces are present, monitor for stalled TX queues using: ethtool -S <interface> | grep tx_queue. Look for queues stuck in a stopped state indefinitely.

Impact Analysis

This vulnerability can cause network performance issues in Linux systems using veth interfaces with multiple queues and GRO enabled. It may lead to stalled network traffic, as transmit queues can become stuck and never recover without manual intervention.

Mitigation Strategies

Apply the Linux kernel patch that fixes this issue. If patching is not immediately possible, disable GRO on veth interfaces using: ethtool -K <interface> gro off. Alternatively, attach an XDP program to the veth interface to initialize the queue index correctly.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-74742. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart