]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit
dmaengine: xilinx_dma: Add missing check for empty list
authorSebastian von Ohr <vonohr@smaract.com>
Tue, 3 Mar 2020 13:05:18 +0000 (14:05 +0100)
committerVinod Koul <vkoul@kernel.org>
Wed, 15 Apr 2020 16:12:11 +0000 (21:42 +0530)
commitb269426011bcfd97b7c3101abfe1a99147b6f40b
tree96e729dae0ec64fd5aa4dfff5de6f9975ed9c7ad
parent172d59ecd61b89f535ad99a7e531c0f111453b9a
dmaengine: xilinx_dma: Add missing check for empty list

The DMA transfer might finish just after checking the state with
dma_cookie_status, but before the lock is acquired. Not checking
for an empty list in xilinx_dma_tx_status may result in reading
random data or data corruption when desc is written to. This can
be reliably triggered by using dma_sync_wait to wait for DMA
completion.

Signed-off-by: Sebastian von Ohr <vonohr@smaract.com>
Tested-by: Radhey Shyam Pandey <radhey.shyam.pandey@xilinx.com>
Link: https://lore.kernel.org/r/20200303130518.333-1-vonohr@smaract.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/xilinx/xilinx_dma.c