linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH -next] pinctrl: nsp: fix potential NULL dereference in nsp_pinmux_probe()
@ 2018-07-11 12:34 Wei Yongjun
  2018-07-11 16:48 ` Ray Jui
  2018-07-13  7:46 ` Linus Walleij
  0 siblings, 2 replies; 10+ messages in thread
From: Wei Yongjun @ 2018-07-11 12:34 UTC (permalink / raw)
  To: linux-arm-kernel

platform_get_resource() may fail and return NULL, so we should
better check it's return value to avoid a NULL pointer dereference
a bit later in the code.

This is detected by Coccinelle semantic patch.

@@
expression pdev, res, n, t, e, e1, e2;
@@

res = platform_get_resource(pdev, t, n);
+ if (!res)
+   return -EINVAL;
... when != res == NULL
e = devm_ioremap_nocache(e1, res->start, e2);

Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
---
 drivers/pinctrl/bcm/pinctrl-nsp-mux.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/pinctrl/bcm/pinctrl-nsp-mux.c b/drivers/pinctrl/bcm/pinctrl-nsp-mux.c
index 5cd8166..87618a4 100644
--- a/drivers/pinctrl/bcm/pinctrl-nsp-mux.c
+++ b/drivers/pinctrl/bcm/pinctrl-nsp-mux.c
@@ -577,6 +577,8 @@ static int nsp_pinmux_probe(struct platform_device *pdev)
 		return PTR_ERR(pinctrl->base0);
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
+	if (!res)
+		return -EINVAL;
 	pinctrl->base1 = devm_ioremap_nocache(&pdev->dev, res->start,
 					      resource_size(res));
 	if (!pinctrl->base1) {

^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2018-07-14 10:49 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-11 12:34 [PATCH -next] pinctrl: nsp: fix potential NULL dereference in nsp_pinmux_probe() Wei Yongjun
2018-07-11 16:48 ` Ray Jui
2018-07-11 16:56   ` Ray Jui
2018-07-11 17:01   ` Sudeep Holla
2018-07-11 17:11     ` Ray Jui
2018-07-11 17:14       ` Sudeep Holla
2018-07-11 17:18         ` Ray Jui
2018-07-13  7:46 ` Linus Walleij
2018-07-13 16:53   ` Ray Jui
2018-07-14 10:49     ` Linus Walleij

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).