net: ethtool: remove unused __ethtool_get_settings
authorDavid Decotigny <decot@googlers.com>
Wed, 24 Feb 2016 18:58:11 +0000 (10:58 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 26 Feb 2016 03:06:47 +0000 (22:06 -0500)
replaced by __ethtool_get_link_ksettings.

Signed-off-by: David Decotigny <decot@googlers.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/ethtool.h
net/core/ethtool.c

index 8a400a5..e2b7bf2 100644 (file)
@@ -150,10 +150,6 @@ extern int
 __ethtool_get_link_ksettings(struct net_device *dev,
                             struct ethtool_link_ksettings *link_ksettings);
 
-/* DEPRECATED, use __ethtool_get_link_ksettings */
-extern int __ethtool_get_settings(struct net_device *dev,
-                                 struct ethtool_cmd *cmd);
-
 /**
  * struct ethtool_ops - optional netdev operations
  * @get_settings: DEPRECATED, use %get_link_ksettings/%set_link_ksettings
index edcec56..2966cd0 100644 (file)
@@ -551,7 +551,12 @@ int __ethtool_get_link_ksettings(struct net_device *dev,
         * legacy %ethtool_cmd API, unless it's not supported either.
         * TODO: remove when ethtool_ops::get_settings disappears internally
         */
-       err = __ethtool_get_settings(dev, &cmd);
+       if (!dev->ethtool_ops->get_settings)
+               return -EOPNOTSUPP;
+
+       memset(&cmd, 0, sizeof(cmd));
+       cmd.cmd = ETHTOOL_GSET;
+       err = dev->ethtool_ops->get_settings(dev, &cmd);
        if (err < 0)
                return err;
 
@@ -729,30 +734,6 @@ static int ethtool_set_link_ksettings(struct net_device *dev,
        return dev->ethtool_ops->set_link_ksettings(dev, &link_ksettings);
 }
 
-/* Internal kernel helper to query a device ethtool_cmd settings.
- *
- * Note about transition to ethtool_link_settings API: We do not need
- * (or want) this function to support "dev" instances that implement
- * the ethtool_link_settings API as we will update the drivers calling
- * this function to call __ethtool_get_link_ksettings instead, before
- * the first drivers implement ethtool_ops::get_link_ksettings.
- *
- * TODO 1: at least make this function static when no driver is using it
- * TODO 2: remove when ethtool_ops::get_settings disappears internally
- */
-int __ethtool_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
-{
-       ASSERT_RTNL();
-
-       if (!dev->ethtool_ops->get_settings)
-               return -EOPNOTSUPP;
-
-       memset(cmd, 0, sizeof(struct ethtool_cmd));
-       cmd->cmd = ETHTOOL_GSET;
-       return dev->ethtool_ops->get_settings(dev, cmd);
-}
-EXPORT_SYMBOL(__ethtool_get_settings);
-
 static void
 warn_incomplete_ethtool_legacy_settings_conversion(const char *details)
 {
@@ -796,16 +777,18 @@ static int ethtool_get_settings(struct net_device *dev, void __user *useraddr)
                /* send a sensible cmd tag back to user */
                cmd.cmd = ETHTOOL_GSET;
        } else {
-               int err;
-               /* TODO: return -EOPNOTSUPP when
-                * ethtool_ops::get_settings disappears internally
-                */
-
                /* driver doesn't support %ethtool_link_ksettings
                 * API. revert to legacy %ethtool_cmd API, unless it's
                 * not supported either.
                 */
-               err = __ethtool_get_settings(dev, &cmd);
+               int err;
+
+               if (!dev->ethtool_ops->get_settings)
+                       return -EOPNOTSUPP;
+
+               memset(&cmd, 0, sizeof(cmd));
+               cmd.cmd = ETHTOOL_GSET;
+               err = dev->ethtool_ops->get_settings(dev, &cmd);
                if (err < 0)
                        return err;
        }