Message ID | 20240608213216.25087-3-olivierdautricourt@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 54e4ada1a4206f878e345ae01cf37347d803d1b1 |
Headers | show |
Series | [v2,1/3] dmaengine: altera-msgdma: use irq variant of spin_lock/unlock while invoking callbacks | expand |
> Remove list_del call in msgdma_chan_desc_cleanup, this should be the role > of msgdma_free_descriptor. In consequence replace list_add_tail with > list_move_tail in msgdma_free_descriptor. … Would you like to add the tag “Fixes”? Regards, Markus
On Sun, Jun 09, 2024 at 07:30:04PM +0200, Markus Elfring wrote: > > Remove list_del call in msgdma_chan_desc_cleanup, this should be the role > > of msgdma_free_descriptor. In consequence replace list_add_tail with > > list_move_tail in msgdma_free_descriptor. > … > > Would you like to add the tag “Fixes”? Right, the Fixes tag will target the first commit introducing this driver (a85c6f1b2921) Thanks, Olivier
diff --git a/drivers/dma/altera-msgdma.c b/drivers/dma/altera-msgdma.c index f32453c97dac..0968176f323d 100644 --- a/drivers/dma/altera-msgdma.c +++ b/drivers/dma/altera-msgdma.c @@ -233,7 +233,7 @@ static void msgdma_free_descriptor(struct msgdma_device *mdev, struct msgdma_sw_desc *child, *next; mdev->desc_free_cnt++; - list_add_tail(&desc->node, &mdev->free_list); + list_move_tail(&desc->node, &mdev->free_list); list_for_each_entry_safe(child, next, &desc->tx_list, node) { mdev->desc_free_cnt++; list_move_tail(&child->node, &mdev->free_list); @@ -590,8 +590,6 @@ static void msgdma_chan_desc_cleanup(struct msgdma_device *mdev) list_for_each_entry_safe(desc, next, &mdev->done_list, node) { struct dmaengine_desc_callback cb; - list_del(&desc->node); - dmaengine_desc_get_callback(&desc->async_tx, &cb); if (dmaengine_desc_callback_valid(&cb)) { spin_unlock_irqrestore(&mdev->lock, irqflags);