diff mbox series

[5.4] net: moxa: Use devm_platform_get_and_ioremap_resource()

Message ID 20210716093245.315536-1-yangyingliang@huawei.com
State New
Headers show
Series [5.4] net: moxa: Use devm_platform_get_and_ioremap_resource() | expand

Commit Message

Yang Yingliang July 16, 2021, 9:32 a.m. UTC
[ Upstream commit 35cba15a504bf4f585bb9d78f47b22b28a1a06b2 ]

Use devm_platform_get_and_ioremap_resource() to simplify
code and avoid a null-ptr-deref by checking 'res' in it.

[yyl: since devm_platform_get_and_ioremap_resource() is introduced
      in linux-5.7, so just check the return value after calling
      platform_get_resource()]

Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
---
 drivers/net/ethernet/moxa/moxart_ether.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Greg Kroah-Hartman July 19, 2021, 12:40 p.m. UTC | #1
On Fri, Jul 16, 2021 at 05:32:45PM +0800, Yang Yingliang wrote:
> [ Upstream commit 35cba15a504bf4f585bb9d78f47b22b28a1a06b2 ]

> 

> Use devm_platform_get_and_ioremap_resource() to simplify

> code and avoid a null-ptr-deref by checking 'res' in it.

> 

> [yyl: since devm_platform_get_and_ioremap_resource() is introduced

>       in linux-5.7, so just check the return value after calling

>       platform_get_resource()]

> 

> Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>

> Signed-off-by: David S. Miller <davem@davemloft.net>

> ---

>  drivers/net/ethernet/moxa/moxart_ether.c | 4 ++++

>  1 file changed, 4 insertions(+)


Now queued up, thanks.

greg k-h
diff mbox series

Patch

diff --git a/drivers/net/ethernet/moxa/moxart_ether.c b/drivers/net/ethernet/moxa/moxart_ether.c
index f70bb81e1ed65..caf7051302725 100644
--- a/drivers/net/ethernet/moxa/moxart_ether.c
+++ b/drivers/net/ethernet/moxa/moxart_ether.c
@@ -481,6 +481,10 @@  static int moxart_mac_probe(struct platform_device *pdev)
 	priv->pdev = pdev;
 
 	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+	if (!res) {
+		ret = -EINVAL;
+		goto init_fail;
+	}
 	ndev->base_addr = res->start;
 	priv->base = devm_ioremap_resource(p_dev, res);
 	if (IS_ERR(priv->base)) {