dmaengine: xilinx_dma: check dma_async_device_register return value
authorShravya Kumbham <shravya.kumbham@xilinx.com>
Wed, 23 Dec 2020 11:21:00 +0000 (16:51 +0530)
committerVinod Koul <vkoul@kernel.org>
Mon, 4 Jan 2021 12:42:39 +0000 (18:12 +0530)
dma_async_device_register() can return non-zero error code. Add
condition to check the return value of dma_async_device_register
function and handle the error path.

Addresses-Coverity: Event check_return.
Fixes: 9cd4360de609 ("dma: Add Xilinx AXI Video Direct Memory Access Engine driver support")
Signed-off-by: Shravya Kumbham <shravya.kumbham@xilinx.com>
Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey@xilinx.com>
Link: https://lore.kernel.org/r/1608722462-29519-2-git-send-email-radhey.shyam.pandey@xilinx.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/xilinx/xilinx_dma.c

index 22faea6..091f1f8 100644 (file)
@@ -3112,7 +3112,11 @@ static int xilinx_dma_probe(struct platform_device *pdev)
        }
 
        /* Register the DMA engine with the core */
-       dma_async_device_register(&xdev->common);
+       err = dma_async_device_register(&xdev->common);
+       if (err) {
+               dev_err(xdev->dev, "failed to register the dma device\n");
+               goto error;
+       }
 
        err = of_dma_controller_register(node, of_dma_xilinx_xlate,
                                         xdev);