On 07-01-22, 10:40, Yang Yingliang wrote: > Add the missing unlock before return from at_xdmac_tasklet(). Applied, thanks > > Fixes: e77e561925df ("dmaengine: at_xdmac: Fix race over irq_status") > Reported-by: Hulk Robot <hulkci@xxxxxxxxxx> > Signed-off-by: Yang Yingliang <yangyingliang@xxxxxxxxxx> > --- > drivers/dma/at_xdmac.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/dma/at_xdmac.c b/drivers/dma/at_xdmac.c > index a1da2b4b6d73..1476156af74b 100644 > --- a/drivers/dma/at_xdmac.c > +++ b/drivers/dma/at_xdmac.c > @@ -1681,8 +1681,10 @@ static void at_xdmac_tasklet(struct tasklet_struct *t) > __func__, atchan->irq_status); > > if (!(atchan->irq_status & AT_XDMAC_CIS_LIS) && > - !(atchan->irq_status & error_mask)) > + !(atchan->irq_status & error_mask)) { > + spin_unlock_irq(&atchan->lock); > return; > + } > > if (atchan->irq_status & error_mask) > at_xdmac_handle_error(atchan); > -- > 2.25.1 -- ~Vinod