__ethtool_get_link_ksettings() function is shared by both ioctl and
netlink ethtool interfaces.

Move it to net/ethtool/common.c file, which is the suitable place for
a shared code.

Signed-off-by: Danielle Ratson <daniel...@nvidia.com>
Suggested-by: Jakub Kicinski <k...@kernel.org>
Reviewed-by: Ido Schimmel <ido...@nvidia.com>
Reviewed-by: Jiri Pirko <j...@nvidia.com>
---
 net/ethtool/common.c | 14 ++++++++++++++
 net/ethtool/ioctl.c  | 14 --------------
 2 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/net/ethtool/common.c b/net/ethtool/common.c
index f9dcbad84788..0dc78e0e8a25 100644
--- a/net/ethtool/common.c
+++ b/net/ethtool/common.c
@@ -484,6 +484,20 @@ convert_legacy_settings_to_link_ksettings(
        return retval;
 }
 
+/* Internal kernel helper to query a device ethtool_link_settings. */
+int __ethtool_get_link_ksettings(struct net_device *dev,
+                                struct ethtool_link_ksettings *link_ksettings)
+{
+       ASSERT_RTNL();
+
+       if (!dev->ethtool_ops->get_link_ksettings)
+               return -EOPNOTSUPP;
+
+       memset(link_ksettings, 0, sizeof(*link_ksettings));
+       return dev->ethtool_ops->get_link_ksettings(dev, link_ksettings);
+}
+EXPORT_SYMBOL(__ethtool_get_link_ksettings);
+
 int __ethtool_get_link(struct net_device *dev)
 {
        if (!dev->ethtool_ops->get_link)
diff --git a/net/ethtool/ioctl.c b/net/ethtool/ioctl.c
index a9f67574148f..8944f4496cf0 100644
--- a/net/ethtool/ioctl.c
+++ b/net/ethtool/ioctl.c
@@ -422,20 +422,6 @@ struct ethtool_link_usettings {
        } link_modes;
 };
 
-/* Internal kernel helper to query a device ethtool_link_settings. */
-int __ethtool_get_link_ksettings(struct net_device *dev,
-                                struct ethtool_link_ksettings *link_ksettings)
-{
-       ASSERT_RTNL();
-
-       if (!dev->ethtool_ops->get_link_ksettings)
-               return -EOPNOTSUPP;
-
-       memset(link_ksettings, 0, sizeof(*link_ksettings));
-       return dev->ethtool_ops->get_link_ksettings(dev, link_ksettings);
-}
-EXPORT_SYMBOL(__ethtool_get_link_ksettings);
-
 /* convert ethtool_link_usettings in user space to a kernel internal
  * ethtool_link_ksettings. return 0 on success, errno on error.
  */
-- 
2.26.2

Reply via email to