OCTOBER 9, 2026
Live Feed
Back to database
Case File

CVE-2026-97573

HIGH · CVSS 8.1 EPSS 0.60%

Source: NVD + CISA KEV + EPSS · Published 2026-09-25 · Last synced 2026-10-09

CyberRota Analysis

AI-Generated

The vulnerability affects the Linux kernel's bnxt_en driver, specifically in the `bnxt_rx_ring_reset()` function, which improperly handles buffer allocation failures. This oversight can lead to the re-enabling of TCP Segmentation Offload (TPA) with partially unallocated receive buffers, potentially resulting in the use of uninitialized memory and zero DMA addresses, which could compromise system stability and security. Linux administrators and developers utilizing affected kernel versions should prioritize addressing this vulnerability to prevent potential exploitation and ensure system integrity.

CVE
CVE-2026-97573
Severity
HIGH
CVSS
8.1
EPSS
0.60%
Linux

Original NVD Description

In the Linux kernel, the following vulnerability has been resolved: bnxt_en: Handle buffer allocation failure in bnxt_rx_ring_reset() bnxt_rx_ring_reset() frees the ring buffers and then reallocates them, ignoring the result. bnxt_alloc_one_rx_ring() can fail in bnxt_alloc_one_tpa_info_data(), which returns -ENOMEM on the first failed allocation and leaves the remaining rxr->rx_tpa[] entries zeroed. The error isn't propagated up, so the loop in bnxt_rx_ring_reset continues and at the end the code re-enables TPA with partially unallocated rx_tpa array. This means that when the agg_id from hardware is mapped to a SW index in rxr->rx_tpa[], an uninitialized slot can be chosen which would hand a zero DMA address to the device. Fix this by falling back to a global reset, which is what the existing code already does when other functions fail, but unlike the other failure cases this particular failure has to return because TPA can't be re-enabled since the allocation failed.