Message ID | 8be473eb-65e0-42b4-b574-e61c3a7f62d8@moroto.mountain (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | dmaengine: qcom: gpi: clean up the IRQ disable/enable in gpi_reset_chan() | expand |
On Thu, 09 May 2024 14:02:11 +0300, Dan Carpenter wrote: > 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. > > Applied, thanks! [1/1] dmaengine: qcom: gpi: clean up the IRQ disable/enable in gpi_reset_chan() commit: f8f530ba429a334fe1a28714787f8a98e90777ec Best regards,
diff --git a/drivers/dma/qcom/gpi.c b/drivers/dma/qcom/gpi.c index 1c93864e0e4d..ed7918c8bda1 100644 --- a/drivers/dma/qcom/gpi.c +++ b/drivers/dma/qcom/gpi.c @@ -1197,7 +1197,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; @@ -1220,9 +1219,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);
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> --- drivers/dma/qcom/gpi.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)