diff mbox series

[net-next,v2] net: mscc: ocelot: check return value after calling platform_get_resource()

Message ID 20210605023148.4124956-1-yangyingliang@huawei.com
State Superseded
Headers show
Series [net-next,v2] net: mscc: ocelot: check return value after calling platform_get_resource() | expand

Commit Message

Yang Yingliang June 5, 2021, 2:31 a.m. UTC
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>
---
v2:
  add missing goto err_alloc_felix
---
 drivers/net/dsa/ocelot/seville_vsc9953.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Vladimir Oltean June 6, 2021, 1:02 a.m. UTC | #1
On Sat, Jun 05, 2021 at 10:31:48AM +0800, Yang Yingliang wrote:
> 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>

> ---


Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
patchwork-bot+netdevbpf@kernel.org June 7, 2021, 9:10 p.m. UTC | #2
Hello:

This patch was applied to netdev/net-next.git (refs/heads/master):

On Sat, 5 Jun 2021 10:31:48 +0800 you wrote:
> 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>

> ---

> v2:

>   add missing goto err_alloc_felix

> 

> [...]


Here is the summary with links:
  - [net-next,v2] net: mscc: ocelot: check return value after calling platform_get_resource()
    https://git.kernel.org/netdev/net-next/c/f1fe19c2cb3f

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
diff mbox series

Patch

diff --git a/drivers/net/dsa/ocelot/seville_vsc9953.c b/drivers/net/dsa/ocelot/seville_vsc9953.c
index 84f93a874d50..deae923c8b7a 100644
--- a/drivers/net/dsa/ocelot/seville_vsc9953.c
+++ b/drivers/net/dsa/ocelot/seville_vsc9953.c
@@ -1206,6 +1206,11 @@  static int seville_probe(struct platform_device *pdev)
 	felix->info = &seville_info_vsc9953;
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+	if (!res) {
+		err = -EINVAL;
+		dev_err(&pdev->dev, "Invalid resource\n");
+		goto err_alloc_felix;
+	}
 	felix->switch_base = res->start;
 
 	ds = kzalloc(sizeof(struct dsa_switch), GFP_KERNEL);