bonding: fix ASSERT_RTNL that produces spurious warnings
Move an ASSERT_RTNL down to where we should hold only RTNL; the existing check produces spurious warnings because we hold additional locks at _bh, tripping a debug warning in spin_lock_mutex(). Signed-off-by: Jay Vosburgh <fubar@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
Родитель
e934dd7862
Коммит
e0138a66e1
|
@ -1601,9 +1601,6 @@ void bond_alb_handle_active_change(struct bonding *bond, struct slave *new_slave
|
|||
struct slave *swap_slave;
|
||||
int i;
|
||||
|
||||
if (new_slave)
|
||||
ASSERT_RTNL();
|
||||
|
||||
if (bond->curr_active_slave == new_slave) {
|
||||
return;
|
||||
}
|
||||
|
@ -1649,6 +1646,8 @@ void bond_alb_handle_active_change(struct bonding *bond, struct slave *new_slave
|
|||
write_unlock_bh(&bond->curr_slave_lock);
|
||||
read_unlock(&bond->lock);
|
||||
|
||||
ASSERT_RTNL();
|
||||
|
||||
/* curr_active_slave must be set before calling alb_swap_mac_addr */
|
||||
if (swap_slave) {
|
||||
/* swap mac address */
|
||||
|
|
Загрузка…
Ссылка в новой задаче