In the Linux kernel, the following vulnerability has been resolved:
bnxten: Fix XDPTX path
For XDPTX action in bnxtrxxdp(), clearing of the event flags is not correct. _bnxtpollwork() -> bnxtrxpkt() -> bnxtrxxdp() may be looping within NAPI and some event flags may be set in earlier iterations. In particular, if BNXTTXEVENT is set earlier indicating some XDPTX packets are ready and pending, it will be cleared if it is XDPTX action again. Normally, we will set BNXTTXEVENT again when we successfully call _bnxtxmit_xdp(). But if the TX ring has no more room, the flag will not be set. This will cause the TX producer to be ahead but the driver will not hit the TX doorbell.
For multi-buf XDPTX, there is no need to clear the event flags and set BNXTAGGEVENT. The BNXTAGGEVENT flag should have been set earlier in bnxtrx_pkt().
The visible symptom of this is that the RX ring associated with the TX XDP ring will eventually become empty and all packets will be dropped. Because this condition will cause the driver to not refill the RX ring seeing that the TX ring has forever pending XDP_TX packets.
The fix is to only clear BNXTRXEVENT when we have successfully called _bnxtxmit_xdp().
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/68xxx/CVE-2025-68770.json",
"cna_assigner": "Linux"
}