bonding: "primary_reselect" with "failure" is not working properly
authorMazhar Rana <mazhar.rana@cyberoam.com>
Tue, 7 Jul 2015 09:34:50 +0000 (15:04 +0530)
committerDavid S. Miller <davem@davemloft.net>
Wed, 8 Jul 2015 23:06:08 +0000 (16:06 -0700)
When "primary_reselect" is set to "failure", primary interface should
not become active until current active slave is down. But if we set first
member of bond device as a "primary" interface and "primary_reselect"
is set to "failure" then whenever primary interface's link get back(up)
it become active slave even if current active slave is still up.

With this patch, "bond_find_best_slave" will not traverse members if
primary interface is not candidate for failover/reselection and current
active slave is still up.

Signed-off-by: Mazhar Rana <mazhar.rana@cyberoam.com>
Signed-off-by: Jay Vosburgh <j.vosburgh@gmail.com>
Signed-off-by: Jay Vosburgh <jay.vosburgh@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bonding/bond_main.c

Simple merge