watchdog: armada_37xx_wdt: check the return value of devm_ioremap() in armada_37xx_wd...
authorWilliam Dean <williamsukatube@gmail.com>
Fri, 22 Jul 2022 03:09:38 +0000 (11:09 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Aug 2022 12:24:11 +0000 (14:24 +0200)
[ Upstream commit 2d27e52841092e5831dd41f313028c668d816eb0 ]

The function devm_ioremap() in armada_37xx_wdt_probe() can fail, so
its return value should be checked.

Fixes: 54e3d9b518c8a ("watchdog: Add support for Armada 37xx CPU watchdog")
Reported-by: Hacash Robot <hacashRobot@santino.com>
Signed-off-by: William Dean <williamsukatube@gmail.com>
Reviewed-by: Marek Beh=C3=BAn <kabel@kernel.org>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20220722030938.2925156-1-williamsukatube@163.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Wim Van Sebroeck <wim@linux-watchdog.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/watchdog/armada_37xx_wdt.c

index 1635f42..854b1cc 100644 (file)
@@ -274,6 +274,8 @@ static int armada_37xx_wdt_probe(struct platform_device *pdev)
        if (!res)
                return -ENODEV;
        dev->reg = devm_ioremap(&pdev->dev, res->start, resource_size(res));
+       if (!dev->reg)
+               return -ENOMEM;
 
        /* init clock */
        dev->clk = devm_clk_get(&pdev->dev, NULL);