diff options
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); |
