From: Julia Lawall Date: Sat, 27 Jan 2018 14:28:28 +0000 (+0100) Subject: firmware: tegra: adjust tested variable X-Git-Tag: microblaze-v4.18-rc1~142^2~7^2 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=1320f76897c5e4893aff68d0bfc1797a5ba543ff;p=linux-2.6-microblaze.git firmware: tegra: adjust tested variable Check the variable that was most recently initialized. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ expression x, y, f, g, e, m; statement S1,S2,S3,S4; @@ x = f(...); if (\(<+...x...+>\&e\)) S1 else S2 ( x = g(...); | m = g(...,&x,...); | y = g(...); *if (e) S3 else S4 ) // Signed-off-by: Julia Lawall Reviewed-by: Mikko Perttunen Signed-off-by: Thierry Reding --- diff --git a/drivers/firmware/tegra/bpmp.c b/drivers/firmware/tegra/bpmp.c index 81bc2dce8626..14a456afa379 100644 --- a/drivers/firmware/tegra/bpmp.c +++ b/drivers/firmware/tegra/bpmp.c @@ -694,7 +694,7 @@ static int tegra_bpmp_probe(struct platform_device *pdev) } bpmp->rx.virt = gen_pool_dma_alloc(bpmp->rx.pool, 4096, &bpmp->rx.phys); - if (!bpmp->rx.pool) { + if (!bpmp->rx.virt) { dev_err(&pdev->dev, "failed to allocate from RX pool\n"); err = -ENOMEM; goto free_tx;