diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c index 98a24709f5cca5c2f317a6bd4c87041f21c529af..2d44c369d787c1cb42daddced8a69cd7d8c47007 100644 --- a/drivers/dma/imx-sdma.c +++ b/drivers/dma/imx-sdma.c @@ -1363,10 +1363,12 @@ static struct sdma_desc *sdma_transfer_init(struct sdma_channel *sdmac, sdma_config_ownership(sdmac, false, true, false); if (sdma_load_context(sdmac)) - goto err_desc_out; + goto err_bd_out; return desc; +err_bd_out: + sdma_free_bd(desc); err_desc_out: kfree(desc); err_out: