Re: Re: [PATCH] dmaengine: tegra210-adma: Fix runtime PM imbalance on error

From: dinghao . liu
Date: Fri May 22 2020 - 06:57:32 EST


>
> On 22/05/2020 08:58, Dinghao Liu wrote:
> > pm_runtime_get_sync() increments the runtime PM usage counter even
> > when it returns an error code. Thus a pairing decrement is needed on
> > the error handling path to keep the counter balanced.
> >
> > Signed-off-by: Dinghao Liu <dinghao.liu@xxxxxxxxxx>
> > ---
> > drivers/dma/tegra210-adma.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/dma/tegra210-adma.c b/drivers/dma/tegra210-adma.c
> > index c4ce5dfb149b..803e1f4d5dac 100644
> > --- a/drivers/dma/tegra210-adma.c
> > +++ b/drivers/dma/tegra210-adma.c
> > @@ -658,6 +658,7 @@ static int tegra_adma_alloc_chan_resources(struct dma_chan *dc)
> >
> > ret = pm_runtime_get_sync(tdc2dev(tdc));
> > if (ret < 0) {
> > + pm_runtime_put_sync(tdc2dev(tdc));
> > free_irq(tdc->irq, tdc);
> > return ret;
> > }
> >
>
>
> There is another place in probe that needs to be fixed as well. Can you
> correct this while you are at it?
>
> Thanks
> Jon
>
> --
> nvpublic

Sure. I have sent a patch to fix PM imbalance in tegra_adma_probe().

Regards,
Dinghao