diff options
Diffstat (limited to 'drivers/net/bonding/bond_ipv6.c')
| -rw-r--r-- | drivers/net/bonding/bond_ipv6.c | 8 | 
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/bonding/bond_ipv6.c b/drivers/net/bonding/bond_ipv6.c index 84fbd4ebd77..027a0ee7d85 100644 --- a/drivers/net/bonding/bond_ipv6.c +++ b/drivers/net/bonding/bond_ipv6.c @@ -183,10 +183,10 @@ static int bond_inet6addr_event(struct notifier_block *this,  		}  		list_for_each_entry(vlan, &bond->vlan_list, vlan_list) { -			if (!bond->vlgrp) -				continue; -			vlan_dev = vlan_group_get_device(bond->vlgrp, -							 vlan->vlan_id); +			rcu_read_lock(); +			vlan_dev = __vlan_find_dev_deep(bond->dev, +							vlan->vlan_id); +			rcu_read_unlock();  			if (vlan_dev == event_dev) {  				switch (event) {  				case NETDEV_UP:  |