From: Mahesh Bandewar <mahe...@google.com>

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 <mahe...@google.com>
---
 drivers/net/bonding/bond_main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index 4e03807bb0d6..b7a344ffc1de 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/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.
@@ -4690,6 +4688,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);
-- 
2.11.0.483.g087da7b7c-goog

Reply via email to