Patchwork [net] bond: check if slave count is 0 in case when deciding to take slave's mac

login
register
mail settings
Submitter Jiri Pirko
Date Feb. 26, 2013, 8:26 a.m.
Message ID <1361867175-4033-1-git-send-email-jiri@resnulli.us>
Download mbox | patch
Permalink /patch/223144/
State Accepted
Delegated to: David Miller
Headers show

Comments

Jiri Pirko - Feb. 26, 2013, 8:26 a.m.
in bond_enslave(), check slave_cnt before actually using slave address.

introduced by:
commit 409cc1f8a41 (bond: have random dev address by default instead of zeroes)

Reported-by: Greg Rose <gregory.v.rose@intel.com>
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
---
 drivers/net/bonding/bond_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
David Miller - Feb. 26, 2013, 10:32 p.m.
From: Jiri Pirko <jiri@resnulli.us>
Date: Tue, 26 Feb 2013 09:26:15 +0100

> in bond_enslave(), check slave_cnt before actually using slave address.
> 
> introduced by:
> commit 409cc1f8a41 (bond: have random dev address by default instead of zeroes)
> 
> Reported-by: Greg Rose <gregory.v.rose@intel.com>
> Signed-off-by: Jiri Pirko <jiri@resnulli.us>

Applied, thanks Jiri.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index 11d01d6..7bd068a 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -1629,7 +1629,7 @@  int bond_enslave(struct net_device *bond_dev, struct net_device *slave_dev)
 
 	/* If this is the first slave, then we need to set the master's hardware
 	 * address to be the same as the slave's. */
-	if (bond->dev_addr_from_first)
+	if (bond->slave_cnt == 0 && bond->dev_addr_from_first)
 		bond_set_dev_addr(bond->dev, slave_dev);
 
 	new_slave = kzalloc(sizeof(struct slave), GFP_KERNEL);