On Wed, May 04, 2022 at 01:51:02AM +0300, Serge Semin wrote: > DW eDMA driver private data is preserved in the passed DW eDMA chip info > structure. If either probe procedure failed or for some reason the passed > info object doesn't have private data pointer initialized we need to halt > the DMA device cleanup procedure in order to prevent possible system > crashes. > > Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx> As I said in the previous iteration, I'm not sure we will hit this issue. But I don't object the patch. So, Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> Thanks, Mani > --- > drivers/dma/dw-edma/dw-edma-core.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/dma/dw-edma/dw-edma-core.c b/drivers/dma/dw-edma/dw-edma-core.c > index 908607785401..561686b51915 100644 > --- a/drivers/dma/dw-edma/dw-edma-core.c > +++ b/drivers/dma/dw-edma/dw-edma-core.c > @@ -1035,6 +1035,10 @@ int dw_edma_remove(struct dw_edma_chip *chip) > struct dw_edma *dw = chip->dw; > int i; > > + /* Skip removal if no private data found */ > + if (!dw) > + return -ENODEV; > + > /* Disable eDMA */ > dw_edma_v0_core_off(dw); > > -- > 2.35.1 > -- மணிவண்ணன் சதாசிவம்