diff options
author | Patrick McHardy <kaber@trash.net> | 2008-05-23 03:22:04 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-05-23 03:27:50 -0400 |
commit | 289c79a4bd350e8a25065102563ad1a183d1b402 (patch) | |
tree | 2067cb054704c62c3debfe92a3f00dc551ff7162 /net/8021q/vlan.c | |
parent | 7bece8155be133cd67c41eed2b31c60a310609de (diff) |
vlan: Use bitmask of feature flags instead of seperate feature bits
Herbert Xu points out that the use of seperate feature bits for features
to be propagated to VLAN devices is going to get messy real soon.
Replace the VLAN feature bits by a bitmask of feature flags to be
propagated and restore the old GSO_SHIFT/MASK values.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/8021q/vlan.c')
-rw-r--r-- | net/8021q/vlan.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/net/8021q/vlan.c b/net/8021q/vlan.c index 51961300b586..ab2225da0ee2 100644 --- a/net/8021q/vlan.c +++ b/net/8021q/vlan.c | |||
@@ -387,14 +387,8 @@ static void vlan_transfer_features(struct net_device *dev, | |||
387 | { | 387 | { |
388 | unsigned long old_features = vlandev->features; | 388 | unsigned long old_features = vlandev->features; |
389 | 389 | ||
390 | if (dev->features & NETIF_F_VLAN_TSO) { | 390 | vlandev->features &= ~dev->vlan_features; |
391 | vlandev->features &= ~VLAN_TSO_FEATURES; | 391 | vlandev->features |= dev->features & dev->vlan_features; |
392 | vlandev->features |= dev->features & VLAN_TSO_FEATURES; | ||
393 | } | ||
394 | if (dev->features & NETIF_F_VLAN_CSUM) { | ||
395 | vlandev->features &= ~NETIF_F_ALL_CSUM; | ||
396 | vlandev->features |= dev->features & NETIF_F_ALL_CSUM; | ||
397 | } | ||
398 | 392 | ||
399 | if (old_features != vlandev->features) | 393 | if (old_features != vlandev->features) |
400 | netdev_features_change(vlandev); | 394 | netdev_features_change(vlandev); |