Description
In the Linux kernel, the following vulnerability has been resolved: dma-buf/dma-resv: Stop leaking on krealloc() failure Currently dma_resv_get_fences() will leak the previously allocated array if the fence iteration got restarted and the krealloc_array() fails. Free the old array by hand, and make sure we still clear the returned *fences so the caller won't end up accessing freed memory. Some (but not all) of the callers of dma_resv_get_fences() seem to still trawl through the array even when dma_resv_get_fences() failed. And let's zero out *num_fences as well for good measure.
Product status
d3c80698c9f58a0683badf78793eebaa0c71afbd (git) before 19e7b9f1f7e1cb92a4cc53b4c064f7fb4b1f1983
d3c80698c9f58a0683badf78793eebaa0c71afbd (git) before 819656cc03dec7f7f7800274dfbc8eb49f888e9f
d3c80698c9f58a0683badf78793eebaa0c71afbd (git) before 05abb3be91d8788328231ee02973ab3d47f5e3d2
5.16
Any version before 5.16
6.1.42 (semver)
6.4.7 (semver)
6.5 (original_commit_for_fix)
References
git.kernel.org/...c/19e7b9f1f7e1cb92a4cc53b4c064f7fb4b1f1983
git.kernel.org/...c/819656cc03dec7f7f7800274dfbc8eb49f888e9f
git.kernel.org/...c/05abb3be91d8788328231ee02973ab3d47f5e3d2