[PATCH] mmc: android-goldfish: fix potential panic due to null pointer

Shawn Lin shawn.lin at rock-chips.com
Sat Aug 20 20:34:36 PDT 2016


We should never compare virt_base with zero to indicate whether
we get the right buffer or not from dma_alloc_coherent. It's quite
architecture related. If failing to get the address from CMA or swoitlb
cases, the sub architecture code should decide the return value for it.
So we should never presume that zero always means the failure.

Signed-off-by: Shawn Lin <shawn.lin at rock-chips.com>
---

 drivers/mmc/host/android-goldfish.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/mmc/host/android-goldfish.c b/drivers/mmc/host/android-goldfish.c
index dca5518..6d8bd03 100644
--- a/drivers/mmc/host/android-goldfish.c
+++ b/drivers/mmc/host/android-goldfish.c
@@ -484,7 +484,7 @@ static int goldfish_mmc_probe(struct platform_device *pdev)
 	host->virt_base = dma_alloc_coherent(&pdev->dev, BUFFER_SIZE,
 					     &buf_addr, GFP_KERNEL);
 
-	if (host->virt_base == 0) {
+	if (!host->virt_base) {
 		ret = -ENOMEM;
 		goto dma_alloc_failed;
 	}
-- 
2.3.7





More information about the Linux-rockchip mailing list