]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
dmaengine: mediatek: Fix a flag reuse error in mtk_cqdma_tx_status()
authorQiu-ji Chen <chenqiuji666@gmail.com>
Fri, 6 Jun 2025 09:00:17 +0000 (17:00 +0800)
committerVinod Koul <vkoul@kernel.org>
Thu, 26 Jun 2025 22:09:20 +0000 (15:09 -0700)
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@vger.kernel.org
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202505270641.MStzJUfU-lkp@intel.com/
Signed-off-by: Qiu-ji Chen <chenqiuji666@gmail.com>
Reviewed-by: Eugen Hristev <eugen.hristev@linaro.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20250606090017.5436-1-chenqiuji666@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/mediatek/mtk-cqdma.c

index 47c8adfdc15504bf37f4f007e65abe7aa56a99da..9f0c41ca7770dcc9d246e124af865a49b99c5845 100644 (file)
@@ -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) {