be_open calls down to functions which expects rtnl lock to be held. Cc: Sathya Perla <sathya.pe...@broadcom.com> Cc: Ajit Khaparde <ajit.khapa...@broadcom.com> Cc: Padmanabh Ratnakar <padmanabh.ratna...@broadcom.com> Cc: Sriharsha Basavapatna <sriharsha.basavapa...@broadcom.com> Cc: Somnath Kotur <somnath.ko...@broadcom.com> Signed-off-by: Hannes Frederic Sowa <han...@stressinduktion.org> --- drivers/net/ethernet/emulex/benet/be_main.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ethernet/emulex/benet/be_main.c b/drivers/net/ethernet/emulex/benet/be_main.c index 536686476369bf..ed98ef1ecac38d 100644 --- a/drivers/net/ethernet/emulex/benet/be_main.c +++ b/drivers/net/ethernet/emulex/benet/be_main.c @@ -4890,11 +4890,13 @@ static int be_resume(struct be_adapter *adapter) if (status) return status; - if (netif_running(netdev)) { + rtnl_lock(); + if (netif_running(netdev)) status = be_open(netdev); - if (status) - return status; - } + rtnl_unlock(); + + if (status) + return status; netif_device_attach(netdev); -- 2.5.5