CVE-2026-23389
Received Received - Intake
Memory Leak in Linux Kernel ice_set_ringparam Function

Publication date: 2026-03-25

Last updated on: 2026-04-27

Assigner: kernel.org

Description
In the Linux kernel, the following vulnerability has been resolved: ice: Fix memory leak in ice_set_ringparam() In ice_set_ringparam, tx_rings and xdp_rings are allocated before rx_rings. If the allocation of rx_rings fails, the code jumps to the done label leaking both tx_rings and xdp_rings. Furthermore, if the setup of an individual Rx ring fails during the loop, the code jumps to the free_tx label which releases tx_rings but leaks xdp_rings. Fix this by introducing a free_xdp label and updating the error paths to ensure both xdp_rings and tx_rings are properly freed if rx_rings allocation or setup fails. Compile tested only. Issue found using a prototype static analysis tool and code review.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-03-25
Last Modified
2026-04-27
Generated
2026-05-07
AI Q&A
2026-03-25
EPSS Evaluated
2026-05-05
NVD
EUVD
Affected Vendors & Products
Showing 11 associated CPEs
Vendor Product Version / Range
linux linux_kernel 4.17
linux linux_kernel From 6.19 (inc) to 6.19.7 (exc)
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel From 4.17.1 (inc) to 6.12.81 (exc)
linux linux_kernel From 6.13 (inc) to 6.18.22 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-401 The product does not sufficiently track and release allocated memory after it has been used, making the memory unavailable for reallocation and reuse.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

This vulnerability exists in the Linux kernel's ice driver, specifically in the function ice_set_ringparam(). The issue is a memory leak caused by improper handling of allocated resources when certain allocations or setups fail.

In detail, tx_rings and xdp_rings are allocated before rx_rings. If the allocation of rx_rings fails, the code jumps to a label that causes tx_rings and xdp_rings to be leaked (not freed). Additionally, if setting up an individual Rx ring fails during a loop, the code frees tx_rings but leaks xdp_rings.

The fix involves introducing a new label to properly free xdp_rings and updating error handling paths to ensure that both xdp_rings and tx_rings are freed correctly if rx_rings allocation or setup fails.


What immediate steps should I take to mitigate this vulnerability?

The vulnerability is fixed by updating the Linux kernel to a version where the ice driver properly frees allocated memory in ice_set_ringparam(). Therefore, the immediate step to mitigate this vulnerability is to apply the patch or upgrade to a Linux kernel version that includes this fix.


How can this vulnerability impact me? :

This vulnerability can lead to memory leaks in the Linux kernel when using the ice driver. Memory leaks can cause increased memory usage over time, potentially leading to degraded system performance or instability.

In environments where the ice driver is heavily used, this could result in resource exhaustion, requiring system reboots or interventions to recover memory.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart