VYPR
Medium severity5.5NVD Advisory· Published May 20, 2024· Updated May 12, 2026

CVE-2024-35958

CVE-2024-35958

Description

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

net: ena: Fix incorrect descriptor free behavior

ENA has two types of TX queues: - queues which only process TX packets arriving from the network stack - queues which only process TX packets forwarded to it by XDP_REDIRECT or XDP_TX instructions

The ena_free_tx_bufs() cycles through all descriptors in a TX queue and unmaps + frees every descriptor that hasn't been acknowledged yet by the device (uncompleted TX transactions). The function assumes that the processed TX queue is necessarily from the first category listed above and ends up using napi_consume_skb() for descriptors belonging to an XDP specific queue.

This patch solves a bug in which, in case of a VF reset, the descriptors aren't freed correctly, leading to crashes.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

In the Linux kernel, a flaw in the ENA driver's TX queue handling causes incorrect descriptor freeing during VF reset, leading to crashes.

Vulnerability

Description The ENA (Elastic Network Adapter) driver in the Linux kernel has two types of TX queues: one for regular network stack packets and one for XDP (eXpress Data Path) redirected or XDP_TX packets. The function ena_free_tx_bufs() is responsible for freeing unacknowledged descriptors during operations like a Virtual Function (VF) reset. However, it incorrectly assumes that all TX queues are of the regular type and uses napi_consume_skb() to free descriptors, even for XDP-specific queues. This leads to improper cleanup and can cause kernel crashes.

Exploitation

Triggering this vulnerability requires a VF reset operation. An attacker would need to have the ability to initiate such a reset, which typically requires administrative privileges on the system. The attack surface is local, as VF resets are performed within the virtualized environment. No network-based exploitation is necessary.

Impact

Successful exploitation results in a kernel crash, leading to a denial of service (DoS) condition for the affected system. The crash occurs due to use of incorrect freeing functions for XDP descriptors, causing memory corruption or use-after-free.

Mitigation

This vulnerability has been fixed in the Linux kernel by patches that ensure ena_free_tx_bufs() correctly identifies the queue type and uses the appropriate freeing function. Users should update to the latest stable kernel version that includes the fix.

AI Insight generated on May 20, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected products

185

Patches

0

No patches discovered yet.

Vulnerability mechanics

AI mechanics synthesis has not run for this CVE yet.

References

9

News mentions

0

No linked articles in our index yet.