Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: dma-direct: return struct page from dma_direct_alloc_from_pool() Commit 5b138c534fda ("dma-direct: factor out a dma_direct_alloc_from_pool helper") changed dma_direct_alloc_from_pool() to return the CPU address from dma_alloc_from_pool(). That fits dma_direct_alloc(), but dma_direct_alloc_pages() also uses the helper and expects a struct page *. Fix this by making dma_direct_alloc_from_pool() return the struct page * again, and pass the CPU address back through an out-parameter for the dma_direct_alloc() caller.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 5b138c534fda57c2ebc1e6de72578aa1d70788a6 before 7801e616fbe3661f9471b2e9bfcb1ed35460bf16; affected 5b138c534fda57c2ebc1e6de72578aa1d70788a6 before c3fdb94da43ff23287f85664174c45c45e881a3f; affected 5b138c534fda57c2ebc1e6de72578aa1d70788a6 before 408ff2d5bf555bd3f4c84a2edb95c0690bf9edc8; affected 5b138c534fda57c2ebc1e6de72578aa1d70788a6 before feeb2ef775081a6c188cdd10e7a45369a07ce531; affected 5b138c534fda57c2ebc1e6de72578aa1d70788a6 before 94a04ad732c9f8b9554270fc4038a06737de5c22 |
| Linux / Linux | affected 5.10; unaffected 0 before 5.10; unaffected 6.6.160 through 6.6.*; unaffected 6.12.110 through 6.12.*; unaffected 6.18.51 through 6.18.*; unaffected 7.2.5 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/7801e616fbe3661f9471b2e9bfcb1ed35460bf16
- https://git.kernel.org/stable/c/c3fdb94da43ff23287f85664174c45c45e881a3f
- https://git.kernel.org/stable/c/408ff2d5bf555bd3f4c84a2edb95c0690bf9edc8
- https://git.kernel.org/stable/c/feeb2ef775081a6c188cdd10e7a45369a07ce531
- https://git.kernel.org/stable/c/94a04ad732c9f8b9554270fc4038a06737de5c22