diff options
Diffstat (limited to 'drivers/net/net_failover.c')
| -rw-r--r-- | drivers/net/net_failover.c | 11 | 
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c index 4f390fa557e4..7ae1856d1f18 100644 --- a/drivers/net/net_failover.c +++ b/drivers/net/net_failover.c @@ -115,7 +115,8 @@ static netdev_tx_t net_failover_start_xmit(struct sk_buff *skb,  }  static u16 net_failover_select_queue(struct net_device *dev, -				     struct sk_buff *skb, void *accel_priv, +				     struct sk_buff *skb, +				     struct net_device *sb_dev,  				     select_queue_fallback_t fallback)  {  	struct net_failover_info *nfo_info = netdev_priv(dev); @@ -128,9 +129,9 @@ static u16 net_failover_select_queue(struct net_device *dev,  		if (ops->ndo_select_queue)  			txq = ops->ndo_select_queue(primary_dev, skb, -						    accel_priv, fallback); +						    sb_dev, fallback);  		else -			txq = fallback(primary_dev, skb); +			txq = fallback(primary_dev, skb, NULL);  		qdisc_skb_cb(skb)->slave_dev_queue_mapping = skb->queue_mapping; @@ -219,14 +220,14 @@ static int net_failover_change_mtu(struct net_device *dev, int new_mtu)  	struct net_device *primary_dev, *standby_dev;  	int ret = 0; -	primary_dev = rcu_dereference(nfo_info->primary_dev); +	primary_dev = rtnl_dereference(nfo_info->primary_dev);  	if (primary_dev) {  		ret = dev_set_mtu(primary_dev, new_mtu);  		if (ret)  			return ret;  	} -	standby_dev = rcu_dereference(nfo_info->standby_dev); +	standby_dev = rtnl_dereference(nfo_info->standby_dev);  	if (standby_dev) {  		ret = dev_set_mtu(standby_dev, new_mtu);  		if (ret) {  |