ethtool: provide link state with LINKSTATE_GET request
Implement LINKSTATE_GET netlink request to get link state information. At the moment, only link up flag as provided by ETHTOOL_GLINK ioctl command is returned. LINKSTATE_GET request can be used with NLM_F_DUMP (without device identification) to request the information for all devices in current network namespace providing the data. Signed-off-by: Michal Kubecek <mkubecek@suse.cz> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
1b1b1847c8
commit
3d2b847fb9
@ -1365,12 +1365,12 @@ static int ethtool_nway_reset(struct net_device *dev)
|
||||
static int ethtool_get_link(struct net_device *dev, char __user *useraddr)
|
||||
{
|
||||
struct ethtool_value edata = { .cmd = ETHTOOL_GLINK };
|
||||
int link = __ethtool_get_link(dev);
|
||||
|
||||
if (!dev->ethtool_ops->get_link)
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
edata.data = netif_running(dev) && dev->ethtool_ops->get_link(dev);
|
||||
if (link < 0)
|
||||
return link;
|
||||
|
||||
edata.data = link;
|
||||
if (copy_to_user(useraddr, &edata, sizeof(edata)))
|
||||
return -EFAULT;
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user