Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: udmabuf: fix memory leak on last export_udmabuf() error path In export_udmabuf(), if dma_buf_fd() fails because the FD table is full, a dma_buf owning the udmabuf has already been created; but the error handling in udmabuf_create() will tear down the udmabuf without doing anything about the containing dma_buf. This leaves a dma_buf in memory that contains a dangling pointer; though that doesn't seem to lead to anything bad except a memory leak. Fix it by moving the dma_buf_fd() call out of export_udmabuf() so that we can give it different error handling. Note that the shape of this code changed a lot in commit 5e72b2b41a21 ("udmabuf: convert udmabuf driver to use folios"); but the memory leak seems to have existed since the introduction of udmabuf.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected fbb0de795078190a9834b3409e4b009cfb18a6d4 before e469922fbdf6ad729e5dc8d49289b5036a0ecdf8; affected fbb0de795078190a9834b3409e4b009cfb18a6d4 before c9fc8428d4255c2128da9c4d5cd92e554d0150cf; affected fbb0de795078190a9834b3409e4b009cfb18a6d4 before f49856f525acd5bef52ae28b7da2e001bbe7439e |
| Linux / Linux | affected 4.20; unaffected 0 before 4.20; unaffected 6.6.160 through 6.6.*; unaffected 6.12.7 through 6.12.*; unaffected 6.13 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/e469922fbdf6ad729e5dc8d49289b5036a0ecdf8
- https://git.kernel.org/stable/c/c9fc8428d4255c2128da9c4d5cd92e554d0150cf
- https://git.kernel.org/stable/c/f49856f525acd5bef52ae28b7da2e001bbe7439e
ADP enrichment
No English description supplied.
No references supplied.