dmaengine: virt-dma: use vchan_vdesc_fini() to free descriptors
vchan_dma_desc_free_list() basically open codes vchan_vdesc_fini() in its loop body. Call it directly rather than duplicating the code. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Tested-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Link: https://lore.kernel.org/r/20191216105328.15198-7-s.hauer@pengutronix.de Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
9f91e6bfa8
commit
b167f94d29
|
@ -115,16 +115,8 @@ void vchan_dma_desc_free_list(struct virt_dma_chan *vc, struct list_head *head)
|
|||
struct virt_dma_desc *vd, *_vd;
|
||||
|
||||
list_for_each_entry_safe(vd, _vd, head, node) {
|
||||
if (dmaengine_desc_test_reuse(&vd->tx)) {
|
||||
unsigned long flags;
|
||||
|
||||
spin_lock_irqsave(&vc->lock, flags);
|
||||
list_move_tail(&vd->node, &vc->desc_allocated);
|
||||
spin_unlock_irqrestore(&vc->lock, flags);
|
||||
} else {
|
||||
list_del(&vd->node);
|
||||
vc->desc_free(vd);
|
||||
}
|
||||
list_del(&vd->node);
|
||||
vchan_vdesc_fini(vd);
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(vchan_dma_desc_free_list);
|
||||
|
|
Loading…
Reference in New Issue