]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
macvlan: Initialize vlan_features to turn on offload support.
authorVlad Yasevich <vyasevic@redhat.com>
Thu, 31 Jul 2014 14:30:25 +0000 (10:30 -0400)
committerWilly Tarreau <w@1wt.eu>
Sun, 23 Nov 2014 09:55:42 +0000 (10:55 +0100)
[ Upstream commit 081e83a78db9b0ae1f5eabc2dedecc865f509b98 ]

Macvlan devices do not initialize vlan_features.  As a result,
any vlan devices configured on top of macvlans perform very poorly.
Initialize vlan_features based on the vlan features of the lower-level
device.

Signed-off-by: Vlad Yasevich <vyasevic@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Willy Tarreau <w@1wt.eu>
drivers/net/macvlan.c

index 2490aa39804ce3e6e6d74727cc0fa082034526a3..47ff740265f2081f5ffeb3b369e39ada9eff5ff8 100644 (file)
@@ -360,6 +360,7 @@ static int macvlan_init(struct net_device *dev)
        dev->state              = (dev->state & ~MACVLAN_STATE_MASK) |
                                  (lowerdev->state & MACVLAN_STATE_MASK);
        dev->features           = lowerdev->features & MACVLAN_FEATURES;
+       dev->vlan_features      = lowerdev->vlan_features & MACVLAN_FEATURES;
        dev->gso_max_size       = lowerdev->gso_max_size;
        dev->iflink             = lowerdev->ifindex;
        dev->hard_header_len    = lowerdev->hard_header_len;