Messages in this thread Patch in this message | | | Date | Wed, 24 Nov 2010 15:12:14 -0800 | Subject | [PATCH] bonding: check for assigned mac before adopting the slaves mac address | From | David Strand <> |
| |
Restore the check for a missing mac address before adopting the first slaves as it's own. This regression was introduced in: http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.36.y.git;a=commit;h=c20811a79e671a6a1fe86a8c1afe04aca8a7f085
Signed-off-by: David Strand dpstrand@gmail.com --- diff -uprN a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c --- a/drivers/net/bonding/bond_main.c 2010-11-24 11:36:58.125640000 -0800 +++ b/drivers/net/bonding/bond_main.c 2010-11-24 11:40:58.175640000 -0800 @@ -1577,8 +1577,9 @@ int bond_enslave(struct net_device *bond /* 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->slave_cnt == 0) - memcpy(bond->dev->dev_addr, slave_dev->dev_addr, - slave_dev->addr_len); + if (is_zero_ether_addr(bond->dev->dev_addr)) + memcpy(bond->dev->dev_addr, slave_dev->dev_addr, + slave_dev->addr_len);
new_slave = kzalloc(sizeof(struct slave), GFP_KERNEL);
| |