Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a93295a7 authored by Roger Quadros's avatar Roger Quadros Committed by Brian Norris
Browse files

mtd: nand: omap2: Don't call dma_release_channel() if dma_request_chan() failed



dma_request_chan() can fail returning an error pointer. In this case
prevent calling dma_release_channel() to prevent a ERR_PTR() dereference.

As error path can be called even with no DMA configuration, info->dma can
be NULL so don't call dma_release_channel() for that case either.

Fixes: de3bfc4a: ("mtd: nand: omap2: fix return value check in omap_nand_probe()")
Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarRoger Quadros <rogerq@ti.com>
Acked-by: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: default avatarBrian Norris <computersforpeace@gmail.com>
parent 29b4817d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2169,7 +2169,7 @@ static int omap_nand_probe(struct platform_device *pdev)
	return 0;

return_error:
	if (info->dma)
	if (!IS_ERR_OR_NULL(info->dma))
		dma_release_channel(info->dma);
	if (nand_chip->ecc.priv) {
		nand_bch_free(nand_chip->ecc.priv);