diff options
Diffstat (limited to 'drivers/net/bonding/bond_main.c')
-rw-r--r-- | drivers/net/bonding/bond_main.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 2c3f9db91b50..4e7473e557ff 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c | |||
@@ -1522,6 +1522,13 @@ int bond_enslave(struct net_device *bond_dev, struct net_device *slave_dev) | |||
1522 | } | 1522 | } |
1523 | } | 1523 | } |
1524 | 1524 | ||
1525 | /* If this is the first slave, then we need to set the master's hardware | ||
1526 | * address to be the same as the slave's. */ | ||
1527 | if (bond->slave_cnt == 0) | ||
1528 | memcpy(bond->dev->dev_addr, slave_dev->dev_addr, | ||
1529 | slave_dev->addr_len); | ||
1530 | |||
1531 | |||
1525 | new_slave = kzalloc(sizeof(struct slave), GFP_KERNEL); | 1532 | new_slave = kzalloc(sizeof(struct slave), GFP_KERNEL); |
1526 | if (!new_slave) { | 1533 | if (!new_slave) { |
1527 | res = -ENOMEM; | 1534 | res = -ENOMEM; |