From 03e02cc5492703a8049274dc860c6e5eee319b7e Mon Sep 17 00:00:00 2001 From: Nikolay Aleksandrov Date: Wed, 5 Sep 2012 04:11:28 +0000 Subject: [PATCH] --- yaml --- r: 327814 b: refs/heads/master c: c6c13965f4ffca6163af0c9419095aedc103648c h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/core/net-sysfs.c | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index a550f3de5de2..a19500ed7ab1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f6fe569fe056388166575af1cfaed0bcbc688305 +refs/heads/master: c6c13965f4ffca6163af0c9419095aedc103648c diff --git a/trunk/net/core/net-sysfs.c b/trunk/net/core/net-sysfs.c index 72607174ea5a..bcf02f608cbf 100644 --- a/trunk/net/core/net-sysfs.c +++ b/trunk/net/core/net-sysfs.c @@ -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;