Commit d46b6349 authored by Philippe Reynes's avatar Philippe Reynes Committed by David S. Miller

net: bonding: use new api ethtool_{get|set}_link_ksettings

The ethtool api {get|set}_settings is deprecated.
We move this driver to new api {get|set}_link_ksettings.
Signed-off-by: default avatarPhilippe Reynes <tremyfr@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 2701c3b3
...@@ -4080,16 +4080,16 @@ static netdev_tx_t bond_start_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -4080,16 +4080,16 @@ static netdev_tx_t bond_start_xmit(struct sk_buff *skb, struct net_device *dev)
return ret; return ret;
} }
static int bond_ethtool_get_settings(struct net_device *bond_dev, static int bond_ethtool_get_link_ksettings(struct net_device *bond_dev,
struct ethtool_cmd *ecmd) struct ethtool_link_ksettings *cmd)
{ {
struct bonding *bond = netdev_priv(bond_dev); struct bonding *bond = netdev_priv(bond_dev);
unsigned long speed = 0; unsigned long speed = 0;
struct list_head *iter; struct list_head *iter;
struct slave *slave; struct slave *slave;
ecmd->duplex = DUPLEX_UNKNOWN; cmd->base.duplex = DUPLEX_UNKNOWN;
ecmd->port = PORT_OTHER; cmd->base.port = PORT_OTHER;
/* Since bond_slave_can_tx returns false for all inactive or down slaves, we /* Since bond_slave_can_tx returns false for all inactive or down slaves, we
* do not need to check mode. Though link speed might not represent * do not need to check mode. Though link speed might not represent
...@@ -4100,12 +4100,12 @@ static int bond_ethtool_get_settings(struct net_device *bond_dev, ...@@ -4100,12 +4100,12 @@ static int bond_ethtool_get_settings(struct net_device *bond_dev,
if (bond_slave_can_tx(slave)) { if (bond_slave_can_tx(slave)) {
if (slave->speed != SPEED_UNKNOWN) if (slave->speed != SPEED_UNKNOWN)
speed += slave->speed; speed += slave->speed;
if (ecmd->duplex == DUPLEX_UNKNOWN && if (cmd->base.duplex == DUPLEX_UNKNOWN &&
slave->duplex != DUPLEX_UNKNOWN) slave->duplex != DUPLEX_UNKNOWN)
ecmd->duplex = slave->duplex; cmd->base.duplex = slave->duplex;
} }
} }
ethtool_cmd_speed_set(ecmd, speed ? : SPEED_UNKNOWN); cmd->base.speed = speed ? : SPEED_UNKNOWN;
return 0; return 0;
} }
...@@ -4121,8 +4121,8 @@ static void bond_ethtool_get_drvinfo(struct net_device *bond_dev, ...@@ -4121,8 +4121,8 @@ static void bond_ethtool_get_drvinfo(struct net_device *bond_dev,
static const struct ethtool_ops bond_ethtool_ops = { static const struct ethtool_ops bond_ethtool_ops = {
.get_drvinfo = bond_ethtool_get_drvinfo, .get_drvinfo = bond_ethtool_get_drvinfo,
.get_settings = bond_ethtool_get_settings,
.get_link = ethtool_op_get_link, .get_link = ethtool_op_get_link,
.get_link_ksettings = bond_ethtool_get_link_ksettings,
}; };
static const struct net_device_ops bond_netdev_ops = { static const struct net_device_ops bond_netdev_ops = {
......
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