| From 3512a18cbd8d09e22a790540cb9624c3c49827ba Mon Sep 17 00:00:00 2001 |
| From: "Gustavo A. R. Silva" <gustavo@embeddedor.com> |
| Date: Thu, 26 Jul 2018 12:11:39 -0500 |
| Subject: mailbox: xgene-slimpro: Fix potential NULL pointer dereference |
| |
| From: Gustavo A. R. Silva <gustavo@embeddedor.com> |
| |
| commit 3512a18cbd8d09e22a790540cb9624c3c49827ba upstream. |
| |
| There is a potential execution path in which function |
| platform_get_resource() returns NULL. If this happens, |
| we will end up having a NULL pointer dereference. |
| |
| Fix this by replacing devm_ioremap with devm_ioremap_resource, |
| which has the NULL check and the memory region request. |
| |
| This code was detected with the help of Coccinelle. |
| |
| Cc: stable@vger.kernel.org |
| Fixes: f700e84f417b ("mailbox: Add support for APM X-Gene platform mailbox driver") |
| Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com> |
| Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/mailbox/mailbox-xgene-slimpro.c | 6 +++--- |
| 1 file changed, 3 insertions(+), 3 deletions(-) |
| |
| --- a/drivers/mailbox/mailbox-xgene-slimpro.c |
| +++ b/drivers/mailbox/mailbox-xgene-slimpro.c |
| @@ -195,9 +195,9 @@ static int slimpro_mbox_probe(struct pla |
| platform_set_drvdata(pdev, ctx); |
| |
| regs = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
| - mb_base = devm_ioremap(&pdev->dev, regs->start, resource_size(regs)); |
| - if (!mb_base) |
| - return -ENOMEM; |
| + mb_base = devm_ioremap_resource(&pdev->dev, regs); |
| + if (IS_ERR(mb_base)) |
| + return PTR_ERR(mb_base); |
| |
| /* Setup mailbox links */ |
| for (i = 0; i < MBOX_CNT; i++) { |