mirror of
https://github.com/torvalds/linux.git
synced 2026-06-04 04:23:35 +02:00
dmaengine: qcom: gpi: clean up the IRQ disable/enable in gpi_reset_chan()
The calls write_lock/unlock_irq() disables and re-enables the IRQs. Calling spin_lock_irqsave() and spin_lock_restore() when the IRQs are already disabled doesn't do anything and just makes the code confusing. Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Link: https://lore.kernel.org/r/8be473eb-65e0-42b4-b574-e61c3a7f62d8@moroto.mountain Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
8ddad55899
commit
f8f530ba42
|
|
@ -1191,7 +1191,6 @@ static int gpi_reset_chan(struct gchan *gchan, enum gpi_cmd gpi_cmd)
|
|||
{
|
||||
struct gpii *gpii = gchan->gpii;
|
||||
struct gpi_ring *ch_ring = &gchan->ch_ring;
|
||||
unsigned long flags;
|
||||
LIST_HEAD(list);
|
||||
int ret;
|
||||
|
||||
|
|
@ -1214,9 +1213,9 @@ static int gpi_reset_chan(struct gchan *gchan, enum gpi_cmd gpi_cmd)
|
|||
gpi_mark_stale_events(gchan);
|
||||
|
||||
/* remove all async descriptors */
|
||||
spin_lock_irqsave(&gchan->vc.lock, flags);
|
||||
spin_lock(&gchan->vc.lock);
|
||||
vchan_get_all_descriptors(&gchan->vc, &list);
|
||||
spin_unlock_irqrestore(&gchan->vc.lock, flags);
|
||||
spin_unlock(&gchan->vc.lock);
|
||||
write_unlock_irq(&gpii->pm_lock);
|
||||
vchan_dma_desc_free_list(&gchan->vc, &list);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user