CVE-2026-99078
net/mlx5e: Prevent stale XSK buffer release on MPWQE refill retry
No known exploitation. No EPSS score yet. Fixed versions are out.
What to do
Find your product and version, then upgrade to the build on the right.
- LinuxAffected: ≥ 4c2a1323680709078736a2886c754004e9fe42e6, < f3a52e2ec2788a7f6b64137985c087188a54ad4fUpgrade to: f3a52e2ec2788a7f6b64137985c087188a54ad4fAffected: ≥ 4c2a1323680709078736a2886c754004e9fe42e6, < d215d09606b0fcd18ad1eb532995782a21cea49dUpgrade to: d215d09606b0fcd18ad1eb532995782a21cea49dAffected: ≥ 4c2a1323680709078736a2886c754004e9fe42e6, < 867119b4b588037724b85839d534465f0334d9bdUpgrade to: 867119b4b588037724b85839d534465f0334d9bdAffected: ≥ 4c2a1323680709078736a2886c754004e9fe42e6, < 3d73a1164a8c6b4461907a65cb6c022ea4fd39afUpgrade to: 3d73a1164a8c6b4461907a65cb6c022ea4fd39af + 1 more branchStated by: CVE record
Versions as the sources state them. Full version matrix after sign-in
What it is
From the CVE record
In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Prevent stale XSK buffer release on MPWQE refill retry With AF_XDP on a striding RQ, mlx5e defers releasing XSK buffers until an MPWQE is refilled. If XSK allocation then returns -ENOMEM, actual_wq_head is not advanced and a later NAPI poll retries the same WQE. mlx5e_free_rx_mpwqe() leaves each released slot marked as releasable. On retry it can therefore call xsk_buff_free() again through stale pointers after the frames have returned to the XSK pool and been reallocated. Set all skip_release_bitmap bits in the common error path of mlx5e_xsk_alloc_rx_mpwqe(). This matches mlx5e_alloc_rx_mpwqe(). A successful allocation already clears the bitmap after replacing every buffer, so retries become idempotent without changing the success path. Fault injection forced three consecutive failures for one selected MPWQE. Both an early allocation failure and a partial 8-of-16-buffer unwind released the original 16 XSK buffers only once. Each error left a full bitmap, the following NAPI retry skipped the release, and a later successful allocation cleared it. A 20-second AF_XDP zero-copy pressure run exercised 1,575,262 buffer allocation failures without invalid descriptors, WQE errors, or kernel warnings.
In plain language
No plain-language summary for this CVE yet.
Exploitation
Where each signal puts this CVE on the scale from published to confirmed exploited.
- CISA KEV
Not in the catalog. CISA has not confirmed exploitation.
- Public exploits
No public exploit or proof of concept found in the sources we track.
- EPSS
No EPSS score yet. New CVEs are usually scored within a few days.
Lifecycle
2 events over 0 days, from the signal feeds we watch.
- Publishedrecord updated
Affected products
Sources
Watch the software you run.
My Stack ranks new CVEs for your products by real-world exploitation, so the next serious one reaches you without reading every advisory.
We'll flag the next CVE, public exploit or patch for Linux, not every advisory.
A free account adds
- The full version matrix and every affected product
- Exploit links, proofs of concept and Metasploit modules
- Email alerts for the products you watch
- The same data over REST API, MCP and CLI