net: bcmgenet: check return value after calling platform_get_resource()
authorYang Yingliang <yangyingliang@huawei.com>
Mon, 7 Jun 2021 13:38:37 +0000 (21:38 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 19 Jul 2021 07:44:47 +0000 (09:44 +0200)
[ Upstream commit 74325bf0104573c6dfce42837139aeef3f34be76 ]

It will cause null-ptr-deref if platform_get_resource() returns NULL,
we need check the return value.

Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/broadcom/genet/bcmmii.c

index 6fb6c35..f9e9130 100644 (file)
@@ -423,6 +423,10 @@ static int bcmgenet_mii_register(struct bcmgenet_priv *priv)
        int id, ret;
 
        pres = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+       if (!pres) {
+               dev_err(&pdev->dev, "Invalid resource\n");
+               return -EINVAL;
+       }
        memset(&res, 0, sizeof(res));
        memset(&ppd, 0, sizeof(ppd));