failover: change mtu has RTNL

When changing MTU, RTNL is held so use rtnl_dereference
instead of rcu_dereference.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Stephen Hemminger 2018-07-27 13:43:21 -07:00 committed by David S. Miller
parent 4b09384aaa
commit 3260155ac7
1 changed files with 2 additions and 2 deletions

View File

@ -220,14 +220,14 @@ static int net_failover_change_mtu(struct net_device *dev, int new_mtu)
struct net_device *primary_dev, *standby_dev; struct net_device *primary_dev, *standby_dev;
int ret = 0; int ret = 0;
primary_dev = rcu_dereference(nfo_info->primary_dev); primary_dev = rtnl_dereference(nfo_info->primary_dev);
if (primary_dev) { if (primary_dev) {
ret = dev_set_mtu(primary_dev, new_mtu); ret = dev_set_mtu(primary_dev, new_mtu);
if (ret) if (ret)
return ret; return ret;
} }
standby_dev = rcu_dereference(nfo_info->standby_dev); standby_dev = rtnl_dereference(nfo_info->standby_dev);
if (standby_dev) { if (standby_dev) {
ret = dev_set_mtu(standby_dev, new_mtu); ret = dev_set_mtu(standby_dev, new_mtu);
if (ret) { if (ret) {