Description
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.
Published: 2026-10-23
Score: 9.8 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

The bug resides in the mlx5e driver of the Linux kernel, where XSK buffers are released only when an MPWQE is refilled. When an XSK allocation fails, the work‑queue head is not advanced and the same WQE is retried during a later NAPI poll. Because the slot was already marked for release, the driver calls xsk_buff_free again during the retry, freeing the same buffers a second time through stale pointers. This double‑free can corrupt kernel memory and, as is common with such errors, could be leveraged by an attacker to execute arbitrary code or cause a system crash.

Affected Systems

All Linux kernel builds that ship the mlx5e (Mellanox Ethernet) driver and that use AF_XDP with a striding receive queue are potentially affected. The advisory does not specify an affected kernel version range, so any kernel containing the vulnerable code before the patch commit is at risk. Administrators should verify the version of the kernel and the presence of the mlx5e driver before applying mitigations.

Risk and Exploitability

The CVSS score of 9.8 classifies the flaw as critical. The EPSS score of <1% indicates that exploitation in the wild is presently unlikely. The flaw is not listed in CISA’s KEV catalog, suggesting no known active exploitation campaigns. The likely attack vector is a malicious or malformed AF_XDP packet that causes repeated XSK allocation failures and NAPI poll retries; however, based on the description this is inferred and not explicitly stated in the advisory. Given the severity and the nature of the double‑free, a successful exploitation could lead to denial of service, memory corruption, or remote code execution.

Generated by OpenCVE AI on November 3, 2026 at 02:54 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a version that includes the patch fixing the double‑free in the mlx5e driver; if a patch release is not yet available, check vendor updates for a fix or backport.
  • If an immediate kernel upgrade is not feasible, disable AF_XDP on Mellanox interfaces or restrict its use until the patch is applied, thereby preventing the double‑free path.
  • Enable kernel memory protection features such as CONFIG_KASLR, CONFIG_PAGE_TABLE_ISOLATION, and CONFIG_DEBUG_KERNEL, and monitor system logs for kernel panics or abnormal memory reclamation events that might indicate use of the vulnerability.

Generated by OpenCVE AI on November 3, 2026 at 02:54 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-9018-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9018-2 Linux kernel (HWE) vulnerabilities
Ubuntu USN Ubuntu USN USN-9019-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-9020-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9022-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9023-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9024-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9025-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-9026-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-9039-1 Linux kernel (Azure CVM) vulnerabilities
Ubuntu USN Ubuntu USN USN-9040-1 Linux kernel (Low Latency NVIDIA) vulnerabilities
Ubuntu USN Ubuntu USN USN-9066-1 Linux kernel (HWE) vulnerabilities
History

Tue, 03 Nov 2026 00:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-1341
References
Metrics threat_severity

None

threat_severity

Moderate


Sat, 24 Oct 2026 17:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-415
CWE-416

Sat, 24 Oct 2026 14:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


Sat, 24 Oct 2026 00:30:00 +0000

Type Values Removed Values Added
First Time appeared Linux linux
Vendors & Products Linux linux

Fri, 23 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-415
CWE-416

Fri, 23 Oct 2026 12:45:00 +0000

Type Values Removed Values Added
Description 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.
Title net/mlx5e: Prevent stale XSK buffer release on MPWQE refill retry
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-24T14:10:20.145Z

Reserved: 2026-09-25T10:25:14.389Z

Link: CVE-2026-99078

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-23T13:17:31.910

Modified: 2026-10-24T14:16:54.790

Link: CVE-2026-99078

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-10-23T12:23:25Z

Links: CVE-2026-99078 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-11-03T03:00:14Z

Weaknesses
  • CWE-1341

    Multiple Releases of Same Resource or Handle