Commit 71891e2d authored by Stephen Hemminger's avatar Stephen Hemminger Committed by David S. Miller

ethtool: do not print warning for applications using legacy API

In kernel log ths message appears on every boot:
 "warning: `NetworkChangeNo' uses legacy ethtool link settings API,
  link modes are only partially reported"

When ethtool link settings API changed, it started complaining about
usages of old API. Ironically, the original patch was from google but
the application using the legacy API is chrome.

Linux ABI is fixed as much as possible. The kernel must not break it
and should not complain about applications using legacy API's.
This patch just removes the warning since using legacy API's
in Linux is perfectly acceptable.

Fixes: 3f1ac7a7 ("net: ethtool: add new ETHTOOL_xLINKSETTINGS API")
Signed-off-by: default avatarStephen Hemminger <stephen@networkplumber.org>
Signed-off-by: default avatarDavid Decotigny <decot@googlers.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent bd30ffc4
...@@ -770,15 +770,6 @@ static int ethtool_set_link_ksettings(struct net_device *dev, ...@@ -770,15 +770,6 @@ static int ethtool_set_link_ksettings(struct net_device *dev,
return dev->ethtool_ops->set_link_ksettings(dev, &link_ksettings); return dev->ethtool_ops->set_link_ksettings(dev, &link_ksettings);
} }
static void
warn_incomplete_ethtool_legacy_settings_conversion(const char *details)
{
char name[sizeof(current->comm)];
pr_info_once("warning: `%s' uses legacy ethtool link settings API, %s\n",
get_task_comm(name, current), details);
}
/* Query device for its ethtool_cmd settings. /* Query device for its ethtool_cmd settings.
* *
* Backward compatibility note: for compatibility with legacy ethtool, * Backward compatibility note: for compatibility with legacy ethtool,
...@@ -805,10 +796,8 @@ static int ethtool_get_settings(struct net_device *dev, void __user *useraddr) ...@@ -805,10 +796,8 @@ static int ethtool_get_settings(struct net_device *dev, void __user *useraddr)
&link_ksettings); &link_ksettings);
if (err < 0) if (err < 0)
return err; return err;
if (!convert_link_ksettings_to_legacy_settings(&cmd, convert_link_ksettings_to_legacy_settings(&cmd,
&link_ksettings)) &link_ksettings);
warn_incomplete_ethtool_legacy_settings_conversion(
"link modes are only partially reported");
/* send a sensible cmd tag back to user */ /* send a sensible cmd tag back to user */
cmd.cmd = ETHTOOL_GSET; cmd.cmd = ETHTOOL_GSET;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment