Critical severity · published Oct 23, 2026
CVE-2026-99079
net/mlx5e: Prevent stale XSK buffer release on refill retry
New
9.8
CVSS
0.5%
EPSS
No
On KEV
Description
In the Linux kernel, the following vulnerability has been resolved:
net/mlx5e: Prevent stale XSK buffer release on refill retry
When an XDP redirect to an AF_XDP socket fails because its RX ring is
full, the XSK core frees the buffer. During the subsequent batched refill
of a legacy cyclic RQ, mlx5e also releases the WQE's XSK buffer before
allocating a replacement. If that refill succeeds only partially, a WQE
left without a replacement retains its old buffer pointer.
The buffer can meanwhile be allocated to another WQE. A later refill
retry can then free the live buffer through the stale pointer and publish
the same UMEM frame twice.
Mark the WQE as released immediately after the driver-side free. The flag
is already cleared when a replacement buffer is assigned, so refill
retries no longer release stale pointers.
The failure is silent and produces no kernel warning or splat. A
standalone legacy cyclic-RQ zero-copy libxsk reproducer, using 64-byte UDP
traffic offered at 12 Mpps, detected it: stock stopped after 2,854,914
packets in 4.094 seconds, with 4,542 xdp_rx_ring_full events and 64
ownership/double-publication errors. With this change it processed
356,904,225 packets in 30 seconds despite 571,405 xdp_rx_ring_full events,
with no ownership or data errors.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.5% · higher than 39% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
LI
Linux · Linux
3f93f82988bc6b4104314bf9aa485d47fbb7e241 before 32bbb870078d467479965c21bbc4960c57eea208; 3f93f82988bc6b4104314bf9aa485d47fbb7e241 before 34d1db2b18e1c1d189e34dd51923e031815f88e3; 3f93f82988bc6b4104314bf9aa485d47fbb7e241 before 639522e5056cade578a324acfa993ec6c9f7f5dc; 3f93f82988bc6b4104314bf9aa485d47fbb7e241 before 655f47477054d19de3b138840be229a1a4490d0c; 3f93f82988bc6b4104314bf9aa485d47fbb7e241 before e01620844c5c88b6fcf819d171df8e3976a0e76f; 6.4 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-99079
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-99079
git.kernel.org
https://git.kernel.org/stable/c/32bbb870078d467479965c21bbc4960c57eea208
git.kernel.org
https://git.kernel.org/stable/c/34d1db2b18e1c1d189e34dd51923e031815f88e3
git.kernel.org
https://git.kernel.org/stable/c/639522e5056cade578a324acfa993ec6c9f7f5dc
git.kernel.org
https://git.kernel.org/stable/c/655f47477054d19de3b138840be229a1a4490d0c
git.kernel.org
https://git.kernel.org/stable/c/e01620844c5c88b6fcf819d171df8e3976a0e76f
More from Linux
9.8
CVE-2025-39682
tls: fix handling of zero-length records on the rx_list
8.8
CVE-2026-53266
netfilter: bridge: make ebt_snat ARP rewrite writable
7.8
CVE-2026-53362
ipv6: account for fraggap on the paged allocation path
7.8
CVE-2026-31431
crypto: algif_aead - Revert to operating out-of-place
7.8
CVE-2025-38352
posix-cpu-timers: fix race between handle_posix_cpu_timers() and posix_cpu_timer_del()
