bonding: allow to add vlans on top of empty bond
authorJiri Pirko <jiri@resnulli.us>
Fri, 27 Jun 2014 14:13:12 +0000 (16:13 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 2 Jul 2014 01:57:43 +0000 (18:57 -0700)
This limitation maybe had some reason in the past, but now there is not
one -> removing this.

Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Acked-by: Veaceslav Falico <vfalico@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bonding/bond_main.c

index 3a451b6cd3d50844fb8fd2e21e3c0305ea0ad1ff..ffefb704b529e47c67adc349e3524929b8506b23 100644 (file)
@@ -1001,12 +1001,6 @@ static netdev_features_t bond_fix_features(struct net_device *dev,
        netdev_features_t mask;
        struct slave *slave;
 
-       if (!bond_has_slaves(bond)) {
-               /* Disable adding VLANs to empty bond. But why? --mq */
-               features |= NETIF_F_VLAN_CHALLENGED;
-               return features;
-       }
-
        mask = features;
        features &= ~NETIF_F_ONE_FOR_ALL;
        features |= NETIF_F_ALL_FOR_ALL;
@@ -3956,13 +3950,6 @@ void bond_setup(struct net_device *bond_dev)
        bond_dev->priv_flags |= IFF_BONDING | IFF_UNICAST_FLT;
        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
-        * empty bond. The block will be removed once non-challenged
-        * slaves are enslaved.
-        */
-       bond_dev->features |= NETIF_F_VLAN_CHALLENGED;
-
        /* don't acquire bond device's netif_tx_lock when
         * transmitting */
        bond_dev->features |= NETIF_F_LLTX;