From: Ido Schimmel <ido...@mellanox.com> Date: Mon, 20 Jun 2016 11:53:20 +0300
> Both dev_uc_sync_multiple() and dev_mc_sync_multiple() require the > source device to be locked by netif_addr_lock_bh(), but this is missing > in team's enslave function, so add it. > > This fixes the following lockdep warning: > > Possible interrupt unsafe locking scenario: > > CPU0 CPU1 > ---- ---- > lock(_xmit_ETHER/1); > local_irq_disable(); > lock(&(&mc->mca_lock)->rlock); > lock(&team_netdev_addr_lock_key); > <Interrupt> > lock(&(&mc->mca_lock)->rlock); > > *** DEADLOCK *** > > Fixes: cb41c997d444 ("team: team should sync the port's uc/mc addrs when add > a port") > Signed-off-by: Jiri Pirko <j...@mellanox.com> > Signed-off-by: Ido Schimmel <ido...@mellanox.com> Applied.