2024-05-09 11:02:27

by Dan Carpenter

[permalink] [raw]
Subject: [PATCH] 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 <[email protected]>
---
drivers/dma/qcom/gpi.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

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);

--
2.43.0



2024-06-11 18:44:23

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH] dmaengine: qcom: gpi: clean up the IRQ disable/enable in gpi_reset_chan()


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,
--
Vinod Koul <[email protected]>