summaryrefslogtreecommitdiff
path: root/drivers/phy
diff options
context:
space:
mode:
authorYang Yingliang <yangyingliang@huawei.com>2021-06-03 08:10:14 +0300
committerVinod Koul <vkoul@kernel.org>2021-06-03 08:48:19 +0300
commitd1ce245fe409241ed6168c835a5b55ef52bdb6a9 (patch)
tree6318263c9cde18111317c0806131e316716eac8d /drivers/phy
parentd6e9e8e5dd53419814eb54803b4ab3682b55cebe (diff)
downloadlinux-d1ce245fe409241ed6168c835a5b55ef52bdb6a9.tar.xz
phy: Sparx5 Eth SerDes: check return value after calling platform_get_resource()
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> Link: https://lore.kernel.org/r/20210603051014.2674744-1-yangyingliang@huawei.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/phy')
-rw-r--r--drivers/phy/microchip/sparx5_serdes.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/phy/microchip/sparx5_serdes.c b/drivers/phy/microchip/sparx5_serdes.c
index c8a7d0927ced..4076580fc2cd 100644
--- a/drivers/phy/microchip/sparx5_serdes.c
+++ b/drivers/phy/microchip/sparx5_serdes.c
@@ -2470,6 +2470,10 @@ static int sparx5_serdes_probe(struct platform_device *pdev)
priv->coreclock = clock;
iores = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+ if (!iores) {
+ dev_err(priv->dev, "Invalid resource\n");
+ return -EINVAL;
+ }
iomem = devm_ioremap(priv->dev, iores->start, resource_size(iores));
if (IS_ERR(iomem)) {
dev_err(priv->dev, "Unable to get serdes registers: %s\n",