diff options
-rw-r--r-- | drivers/net/bonding/bond_main.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 82b70ff1fd28..b47fa0421e01 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c | |||
@@ -1659,9 +1659,6 @@ static int __bond_release_one(struct net_device *bond_dev, | |||
1659 | return -EINVAL; | 1659 | return -EINVAL; |
1660 | } | 1660 | } |
1661 | 1661 | ||
1662 | /* release the slave from its bond */ | ||
1663 | bond->slave_cnt--; | ||
1664 | |||
1665 | bond_sysfs_slave_del(slave); | 1662 | bond_sysfs_slave_del(slave); |
1666 | 1663 | ||
1667 | bond_upper_dev_unlink(bond_dev, slave_dev); | 1664 | bond_upper_dev_unlink(bond_dev, slave_dev); |
@@ -1743,6 +1740,7 @@ static int __bond_release_one(struct net_device *bond_dev, | |||
1743 | 1740 | ||
1744 | unblock_netpoll_tx(); | 1741 | unblock_netpoll_tx(); |
1745 | synchronize_rcu(); | 1742 | synchronize_rcu(); |
1743 | bond->slave_cnt--; | ||
1746 | 1744 | ||
1747 | if (!bond_has_slaves(bond)) { | 1745 | if (!bond_has_slaves(bond)) { |
1748 | call_netdevice_notifiers(NETDEV_CHANGEADDR, bond->dev); | 1746 | call_netdevice_notifiers(NETDEV_CHANGEADDR, bond->dev); |