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.
Product status
fcea6f3da546b93050f3534aadea7bd96c1d7349 (git) before bddf04e3822e4fa38691433dd0750420d49a0dd6
fcea6f3da546b93050f3534aadea7bd96c1d7349 (git) before e0c211a0c26159058303712d6b4fbd1c88835e6d
fcea6f3da546b93050f3534aadea7bd96c1d7349 (git) before b23282218eca27b710111460b4964c8a456c6c44
fcea6f3da546b93050f3534aadea7bd96c1d7349 (git) before 63dc317dfcd3faffd082c2bf3080f9ad070273da
fcea6f3da546b93050f3534aadea7bd96c1d7349 (git) before 44ba32a892b72de3faa04b8cfb1f2f1418fdd580
fcea6f3da546b93050f3534aadea7bd96c1d7349 (git) before fe868b499d16f55bbeea89992edb98043c9de416
4.17
Any version before 4.17
6.1.175 (semver)
6.6.136 (semver)
6.12.81 (semver)
6.18.22 (semver)
6.19.7 (semver)
7.0 (original_commit_for_fix)
References
git.kernel.org/...c/bddf04e3822e4fa38691433dd0750420d49a0dd6
git.kernel.org/...c/e0c211a0c26159058303712d6b4fbd1c88835e6d
git.kernel.org/...c/b23282218eca27b710111460b4964c8a456c6c44
git.kernel.org/...c/63dc317dfcd3faffd082c2bf3080f9ad070273da
git.kernel.org/...c/44ba32a892b72de3faa04b8cfb1f2f1418fdd580
git.kernel.org/...c/fe868b499d16f55bbeea89992edb98043c9de416