CVE-2026-97571

Summary

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

bnxt_en: Propagate TPA buffer allocation failures in bnxt_queue_mem_alloc()

bnxt_alloc_one_tpa_info_data() returns -ENOMEM as soon as one allocation fails. This leaves the remaining rxr->rx_tpa[] entries zeroed.

bnxt_queue_mem_alloc() discards that return value, so the partially initialized ring is installed by bnxt_queue_start().

Since the agg_id is picked by the hardware and bnxt_alloc_agg_idx maps it to a SW index in rxr->rx_tpa[], it is possible that an uninitialized slot can be chosen which would hand a zero DMA address to the device.

Fix this by checking the return value of bnxt_alloc_one_tpa_info_data and unwinding, freeing the ring buffers.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxbd649c5cc958169b8a8a3e77ea926d92d472b02a < c8050386a2209b2a474c1eb4bd1574dc19129bfbaffected
LinuxLinuxbd649c5cc958169b8a8a3e77ea926d92d472b02a < 37e08dc821a57fe0592c917486b638caa888b46daffected
LinuxLinuxbd649c5cc958169b8a8a3e77ea926d92d472b02a < b814dfbfeb0a68c9a52073f2caa05a2d5247a329affected
LinuxLinux0997443906b96a051011f220a61e6dce4602ec54affected
LinuxLinux6.12.20 < 6.13affected
LinuxLinux6.13affected
LinuxLinux0 < 6.13unaffected
LinuxLinux6.18.53 <= 6.18.*unaffected
LinuxLinux7.2.7 <= 7.2.*unaffected
LinuxLinux7.3-rc3 <= *unaffected

Weaknesses

References