ethtool: return error from ethnl_ops_begin if dev is NULL
authorHeiner Kallweit <hkallweit1@gmail.com>
Thu, 5 Aug 2021 19:08:22 +0000 (21:08 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 6 Aug 2021 09:39:04 +0000 (10:39 +0100)
Julian reported that after d43c65b05b84 Coverity complains about a
missing check whether dev is NULL in ethnl_ops_complete().
There doesn't seem to be any valid case where dev could be NULL when
calling ethnl_ops_begin(), therefore return an error if dev is NULL.

Fixes: d43c65b05b84 ("ethtool: runtime-resume netdev parent in ethnl_ops_begin")
Reported-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ethtool/netlink.c

index f8bca08..1797a0a 100644 (file)
@@ -35,7 +35,7 @@ int ethnl_ops_begin(struct net_device *dev)
        int ret;
 
        if (!dev)
-               return 0;
+               return -ENODEV;
 
        if (dev->dev.parent)
                pm_runtime_get_sync(dev->dev.parent);
@@ -61,7 +61,7 @@ err:
 
 void ethnl_ops_complete(struct net_device *dev)
 {
-       if (dev && dev->ethtool_ops->complete)
+       if (dev->ethtool_ops->complete)
                dev->ethtool_ops->complete(dev);
 
        if (dev->dev.parent)