net: rdma: use __ethtool_get_ksettings
Signed-off-by: David Decotigny <decot@googlers.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
008eb73693
Коммит
17605b961f
|
@ -262,24 +262,22 @@ static inline enum ib_mtu iboe_get_mtu(int mtu)
|
||||||
|
|
||||||
static inline int iboe_get_rate(struct net_device *dev)
|
static inline int iboe_get_rate(struct net_device *dev)
|
||||||
{
|
{
|
||||||
struct ethtool_cmd cmd;
|
struct ethtool_link_ksettings cmd;
|
||||||
u32 speed;
|
|
||||||
int err;
|
int err;
|
||||||
|
|
||||||
rtnl_lock();
|
rtnl_lock();
|
||||||
err = __ethtool_get_settings(dev, &cmd);
|
err = __ethtool_get_link_ksettings(dev, &cmd);
|
||||||
rtnl_unlock();
|
rtnl_unlock();
|
||||||
if (err)
|
if (err)
|
||||||
return IB_RATE_PORT_CURRENT;
|
return IB_RATE_PORT_CURRENT;
|
||||||
|
|
||||||
speed = ethtool_cmd_speed(&cmd);
|
if (cmd.base.speed >= 40000)
|
||||||
if (speed >= 40000)
|
|
||||||
return IB_RATE_40_GBPS;
|
return IB_RATE_40_GBPS;
|
||||||
else if (speed >= 30000)
|
else if (cmd.base.speed >= 30000)
|
||||||
return IB_RATE_30_GBPS;
|
return IB_RATE_30_GBPS;
|
||||||
else if (speed >= 20000)
|
else if (cmd.base.speed >= 20000)
|
||||||
return IB_RATE_20_GBPS;
|
return IB_RATE_20_GBPS;
|
||||||
else if (speed >= 10000)
|
else if (cmd.base.speed >= 10000)
|
||||||
return IB_RATE_10_GBPS;
|
return IB_RATE_10_GBPS;
|
||||||
else
|
else
|
||||||
return IB_RATE_PORT_CURRENT;
|
return IB_RATE_PORT_CURRENT;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче