diff options
Diffstat (limited to 'drivers/net/ethernet/rocker/rocker.c')
| -rw-r--r-- | drivers/net/ethernet/rocker/rocker.c | 2 | 
1 files changed, 2 insertions, 0 deletions
| diff --git a/drivers/net/ethernet/rocker/rocker.c b/drivers/net/ethernet/rocker/rocker.c index a4ab71d43e4e..166a7fc87e2f 100644 --- a/drivers/net/ethernet/rocker/rocker.c +++ b/drivers/net/ethernet/rocker/rocker.c @@ -3531,12 +3531,14 @@ static void rocker_port_fdb_learn_work(struct work_struct *work)  	info.addr = lw->addr;  	info.vid = lw->vid; +	rtnl_lock();  	if (learned && removing)  		call_switchdev_notifiers(SWITCHDEV_FDB_DEL,  					 lw->rocker_port->dev, &info.info);  	else if (learned && !removing)  		call_switchdev_notifiers(SWITCHDEV_FDB_ADD,  					 lw->rocker_port->dev, &info.info); +	rtnl_unlock();  	rocker_port_kfree(lw->trans, work);  } | 
