summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorJeffrey Hugo <jeffrey.l.hugo@gmail.com>2019-10-17 08:26:06 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-11-10 11:23:31 +0100
commit202a60489a24fcac6461da6358de1a48c0c23a6b (patch)
treef0aadd67d5095a5e44bbc7d499fc2e70b41b3457 /kernel
parent1f94465d13ace2d4610c4eb2b362454ce2a9d87c (diff)
dmaengine: qcom: bam_dma: Fix resource leak
commit 7667819385457b4aeb5fac94f67f52ab52cc10d5 upstream. bam_dma_terminate_all() will leak resources if any of the transactions are committed to the hardware (present in the desc fifo), and not complete. Since bam_dma_terminate_all() does not cause the hardware to be updated, the hardware will still operate on any previously committed transactions. This can cause memory corruption if the memory for the transaction has been reassigned, and will cause a sync issue between the BAM and its client(s). Fix this by properly updating the hardware in bam_dma_terminate_all(). Fixes: e7c0fe2a5c84 ("dmaengine: add Qualcomm BAM dma driver") Signed-off-by: Jeffrey Hugo <jeffrey.l.hugo@gmail.com> Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/20191017152606.34120-1-jeffrey.l.hugo@gmail.com Signed-off-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions