[PATCH v2] dmaengine: mediatek: Fix a flag reuse error in mtk_cqdma_tx_status()
Eugen Hristev
eugen.hristev at linaro.org
Wed Jun 11 06:05:34 PDT 2025
On 6/6/25 12:00, Qiu-ji Chen wrote:
> Fixed a flag reuse bug in the mtk_cqdma_tx_status() function.
>
> Fixes: 157ae5ffd76a ("dmaengine: mediatek: Fix a possible deadlock error in mtk_cqdma_tx_status()")
> Cc: stable at vger.kernel.org
> Reported-by: kernel test robot <lkp at intel.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202505270641.MStzJUfU-lkp@intel.com/
> Signed-off-by: Qiu-ji Chen <chenqiuji666 at gmail.com>
Reviewed-by: Eugen Hristev <eugen.hristev at linaro.org>
> ---
> V2:
> Change the inner vc lock from spin_lock_irqsave() to spin_lock()
> Thanks Eugen Hristev for helpful suggestion.
> ---
> drivers/dma/mediatek/mtk-cqdma.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/dma/mediatek/mtk-cqdma.c b/drivers/dma/mediatek/mtk-cqdma.c
> index 47c8adfdc155..9f0c41ca7770 100644
> --- a/drivers/dma/mediatek/mtk-cqdma.c
> +++ b/drivers/dma/mediatek/mtk-cqdma.c
> @@ -449,9 +449,9 @@ static enum dma_status mtk_cqdma_tx_status(struct dma_chan *c,
> return ret;
>
> spin_lock_irqsave(&cvc->pc->lock, flags);
> - spin_lock_irqsave(&cvc->vc.lock, flags);
> + spin_lock(&cvc->vc.lock);
> vd = mtk_cqdma_find_active_desc(c, cookie);
> - spin_unlock_irqrestore(&cvc->vc.lock, flags);
> + spin_unlock(&cvc->vc.lock);
> spin_unlock_irqrestore(&cvc->pc->lock, flags);
>
> if (vd) {
More information about the linux-arm-kernel
mailing list