[<prev] [next>] [day] [month] [year] [list]
Message-ID: <52DF8DBD.4030803@huawei.com>
Date: Wed, 22 Jan 2014 17:22:05 +0800
From: Ding Tianhong <dingtianhong@...wei.com>
To: Jay Vosburgh <fubar@...ibm.com>,
Veaceslav Falico <vfalico@...hat.com>,
"David S. Miller" <davem@...emloft.net>,
Netdev <netdev@...r.kernel.org>,
Andy Gospodarek <andy@...yhouse.net>
Subject: [PATCH net-next 2/3] bonding: only affect active-backup mode when
fail_over_mac is not none
According bonding.txt, the fail_over_mac only affect active-backup mode,
but now the fail_over_mac could be set to active or follow in every mode,
this will make the new slave could not be set to bond's MAC address at
enslavement for several modes, such as RR or XOR.
So this patch fix two problems:
1). If the fail_over_mac is active or follow and the mode is not active-backup,
the new slave could be set to the bond's MAC address,
2). The first slave could work normally regardless it could support setting MAC
address or not, and the bonding always be set to first slave's MAC address,
so no need to set the first slave to bond's MAC address again when fail_over_mac
is none at enslavement.
Cc: Jay Vosburgh <fubar@...ibm.com>
Cc: Veaceslav Falico <vfalico@...hat.com>
Cc: Andy Gospodarek <andy@...yhouse.net>
Signed-off-by: Ding Tianhong <dingtianhong@...wei.com>
---
drivers/net/bonding/bond_main.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index 598f100..ce0f5c0 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -1387,7 +1387,9 @@ int bond_enslave(struct net_device *bond_dev, struct net_device *slave_dev)
*/
memcpy(new_slave->perm_hwaddr, slave_dev->dev_addr, ETH_ALEN);
- if (!bond->params.fail_over_mac) {
+ if (bond_has_slaves(bond) &&
+ (!bond->params.fail_over_mac ||
+ bond->params.mode != BOND_MODE_ACTIVEBACKUP)) {
/*
* Set slave to master's mac address. The application already
* set the master's mac address to that of the first slave
--
1.8.0
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists