CVE-2026-31644 Details
Description
In the Linux kernel, the following vulnerability has been resolved: net: lan966x: fix use-after-free and leak in lan966x_fdma_reload() When lan966x_fdma_reload() fails to allocate new RX buffers, the restore path restarts DMA using old descriptors whose pages were already freed via lan966x_fdma_rx_free_pages(). Since page_pool_put_full_page() can release pages back to the buddy allocator, the hardware may DMA into memory now owned by other kernel subsystems. Additionally, on the restore path, the newly created page pool (if allocation partially succeeded) is overwritten without being destroyed, leaking it. Fix both issues by deferring the release of old pages until after the new allocation succeeds. Save the old page array before the allocation so old pages can be freed on the success path. On the failure path, the old descriptors, pages and page pool are all still valid, making the restore safe. Also ensure the restore path re-enables NAPI and wakes the netdev, matching the success path.
A use-after-free vulnerability and memory leak have been identified in the LAN966X Ethernet driver of the Linux kernel. This issue arises in the 'lan966x_fdma_reload()' function when it fails to allocate new receive (RX) buffers. The function then attempts to restart Direct Memory Access (DMA) using old descriptors, whose pages have already been freed. This can lead to DMA operations targeting memory now managed by other kernel subsystems, causing potential data corruption or instability. Furthermore, the function overwrites a newly created page pool (if the allocation was only partially successful) without properly releasing it first, resulting in a memory leak.
Users can apply the latest patches available in the Linux kernel stable tree to address this vulnerability. The patches can be downloaded from the Linux kernel Git repository.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
No SSVC data is available for this CVE.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://git.kernel.org/stable/c/59c3d55a946cacdb4181600723c20ac4f4c20c84 | kernel.org | Patch |
| https://git.kernel.org/stable/c/691082c0b93c13a5e068c0905f673060bddc204e | kernel.org | Patch |
| https://git.kernel.org/stable/c/92a673019943770930e2a8bfd52e1aad47a1fc1f | kernel.org | Patch |
| https://git.kernel.org/stable/c/9950e9199b3dfdfbde0b8d96ba947d7b11243801 | kernel.org | Patch |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-416 | Use After Free | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | >= 6.12.1, < 6.12.82 >= 6.13, < 6.18.23 >= 6.19, < 6.19.13 6.12 - 7.0 rc1 7.0 rc2 7.0 rc3 7.0 rc4 7.0 rc5 7.0 rc6 7.0 rc7 |
CPE
Remediation
| |
Change History
4 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jun 17, 2026 | CVE Modified | kernel.org |
| Apr 27, 2026 | Initial Analysis | [email protected] |
| Apr 27, 2026 | CVE Modified | kernel.org |
| Apr 24, 2026 | New CVE Received | kernel.org |