Browse Source

bonding: initialize work-queues during creation of bond

Initializing work-queues every time ifup operation performed is unnecessary
and can be performed only once when the port is created.

Signed-off-by: Mahesh Bandewar <maheshb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mahesh Bandewar 8 years ago
parent
commit
4493b81bea
1 changed files with 2 additions and 2 deletions
  1. 2 2
      drivers/net/bonding/bond_main.c

+ 2 - 2
drivers/net/bonding/bond_main.c

@@ -3270,8 +3270,6 @@ static int bond_open(struct net_device *bond_dev)
 		}
 	}
 
-	bond_work_init_all(bond);
-
 	if (bond_is_lb(bond)) {
 		/* bond_alb_initialize must be called before the timer
 		 * is started.
@@ -4691,6 +4689,8 @@ int bond_create(struct net *net, const char *name)
 
 	netif_carrier_off(bond_dev);
 
+	bond_work_init_all(bond);
+
 	rtnl_unlock();
 	if (res < 0)
 		bond_destructor(bond_dev);