Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: dmaengine: sun6i-dma: Fix reclaim descriptors while terminating DMA When terminating DMA transfers, active descriptors are not properly reclaimed. Only cyclic descriptors were handled, leaving non-cyclic descriptors and their LLI chains to be permanently leaked. Fix by using vchan_terminate_vdesc() which handles both cyclic and non-cyclic descriptors by adding them to desc_terminated queue for proper cleanup. Add pchan->desc != pchan->done check to prevent double-adding completed descriptors, which would corrupt the list.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 555859308723d8d5b828304f5eb9281143fd86b5 before bb87440561eb72b47a2b848b5373b86433b247e6; affected 555859308723d8d5b828304f5eb9281143fd86b5 before 004a7a02982bed0a727a4ac7be400f00f353e7a2; affected 555859308723d8d5b828304f5eb9281143fd86b5 before b150f603083cc8b72b0cbf13ec3e91f85b4390a0; affected 555859308723d8d5b828304f5eb9281143fd86b5 before 27806fe7b9701af0963dcd510e30e7d0cc314c43; affected 555859308723d8d5b828304f5eb9281143fd86b5 before 1ccc5c059d067c5358682ad5352e7d7e9239ed9b; affected 555859308723d8d5b828304f5eb9281143fd86b5 before 9086b488f2737d5dcee86852b83f2059f1cdfabf; affected 555859308723d8d5b828304f5eb9281143fd86b5 before d4ba6aa65fcd797152d3aebd428a7b2da49cd5eb; affected 555859308723d8d5b828304f5eb9281143fd86b5 before ab1150115e68a46b687eb38c1ab92782018c9f2c |
| Linux / Linux | affected 3.17; unaffected 0 before 3.17; unaffected 5.10.265 through 5.10.*; unaffected 5.15.216 through 5.15.*; unaffected 6.1.183 through 6.1.*; unaffected 6.6.151 through 6.6.*; unaffected 6.12.103 through 6.12.*; unaffected 6.18.44 through 6.18.*; unaffected 7.1.8 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/bb87440561eb72b47a2b848b5373b86433b247e6
- https://git.kernel.org/stable/c/004a7a02982bed0a727a4ac7be400f00f353e7a2
- https://git.kernel.org/stable/c/b150f603083cc8b72b0cbf13ec3e91f85b4390a0
- https://git.kernel.org/stable/c/27806fe7b9701af0963dcd510e30e7d0cc314c43
- https://git.kernel.org/stable/c/1ccc5c059d067c5358682ad5352e7d7e9239ed9b
- https://git.kernel.org/stable/c/9086b488f2737d5dcee86852b83f2059f1cdfabf
- https://git.kernel.org/stable/c/d4ba6aa65fcd797152d3aebd428a7b2da49cd5eb
- https://git.kernel.org/stable/c/ab1150115e68a46b687eb38c1ab92782018c9f2c