diff options
author | David S. Miller <davem@davemloft.net> | 2015-06-01 17:43:50 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-06-01 17:43:50 -0400 |
commit | 18ec898ee54e03a9aab8b54db50cb2b36209d313 (patch) | |
tree | 7ddf23ada91fcd6057b951a7d61ef39fed8e63ef /net | |
parent | c6e36d8c1a76be7a7afa2669483857dadec1e99c (diff) |
Revert "net: core: 'ethtool' issue with querying phy settings"
This reverts commit f96dee13b8e10f00840124255bed1d8b4c6afd6f.
It isn't right, ethtool is meant to manage one PHY instance
per netdevice at a time, and this is selected by the SET
command. Therefore by definition the GET command must only
return the settings for the configured and selected PHY.
Reported-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/core/ethtool.c | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/net/core/ethtool.c b/net/core/ethtool.c index 1347e11f5cc9..1d00b8922902 100644 --- a/net/core/ethtool.c +++ b/net/core/ethtool.c | |||
@@ -359,15 +359,7 @@ static int ethtool_get_settings(struct net_device *dev, void __user *useraddr) | |||
359 | int err; | 359 | int err; |
360 | struct ethtool_cmd cmd; | 360 | struct ethtool_cmd cmd; |
361 | 361 | ||
362 | if (!dev->ethtool_ops->get_settings) | 362 | err = __ethtool_get_settings(dev, &cmd); |
363 | return -EOPNOTSUPP; | ||
364 | |||
365 | if (copy_from_user(&cmd, useraddr, sizeof(cmd))) | ||
366 | return -EFAULT; | ||
367 | |||
368 | cmd.cmd = ETHTOOL_GSET; | ||
369 | |||
370 | err = dev->ethtool_ops->get_settings(dev, &cmd); | ||
371 | if (err < 0) | 363 | if (err < 0) |
372 | return err; | 364 | return err; |
373 | 365 | ||