|
@@ -1557,8 +1557,10 @@ int bond_enslave(struct net_device *bond_dev, struct net_device *slave_dev)
|
|
|
|
|
|
if (slave_dev->type != ARPHRD_ETHER)
|
|
|
bond_setup_by_slave(bond_dev, slave_dev);
|
|
|
- else
|
|
|
+ else {
|
|
|
ether_setup(bond_dev);
|
|
|
+ bond_dev->priv_flags &= ~IFF_TX_SKB_SHARING;
|
|
|
+ }
|
|
|
|
|
|
netdev_bonding_change(bond_dev,
|
|
|
NETDEV_POST_TYPE_CHANGE);
|
|
@@ -4330,7 +4332,7 @@ static void bond_setup(struct net_device *bond_dev)
|
|
|
bond_dev->tx_queue_len = 0;
|
|
|
bond_dev->flags |= IFF_MASTER|IFF_MULTICAST;
|
|
|
bond_dev->priv_flags |= IFF_BONDING;
|
|
|
- bond_dev->priv_flags &= ~IFF_XMIT_DST_RELEASE;
|
|
|
+ bond_dev->priv_flags &= ~(IFF_XMIT_DST_RELEASE | IFF_TX_SKB_SHARING);
|
|
|
|
|
|
/* At first, we block adding VLANs. That's the only way to
|
|
|
* prevent problems that occur when adding VLANs over an
|