net: add unknown state to sysfs NIC duplex export
Currently when the NIC duplex state is DUPLEX_UNKNOWN it is exported as full through sysfs, this patch adds support for DUPLEX_UNKNOWN. It is handled the same way as in ethtool. Signed-off-by: Nikolay Aleksandrov <naleksan@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f6fe569fe0
commit
c6c13965f4
@ -166,9 +166,21 @@ static ssize_t show_duplex(struct device *dev,
|
||||
|
||||
if (netif_running(netdev)) {
|
||||
struct ethtool_cmd cmd;
|
||||
if (!__ethtool_get_settings(netdev, &cmd))
|
||||
ret = sprintf(buf, "%s\n",
|
||||
cmd.duplex ? "full" : "half");
|
||||
if (!__ethtool_get_settings(netdev, &cmd)) {
|
||||
const char *duplex;
|
||||
switch (cmd.duplex) {
|
||||
case DUPLEX_HALF:
|
||||
duplex = "half";
|
||||
break;
|
||||
case DUPLEX_FULL:
|
||||
duplex = "full";
|
||||
break;
|
||||
default:
|
||||
duplex = "unknown";
|
||||
break;
|
||||
}
|
||||
ret = sprintf(buf, "%s\n", duplex);
|
||||
}
|
||||
}
|
||||
rtnl_unlock();
|
||||
return ret;
|
||||
|
Loading…
Reference in New Issue
Block a user