diff mbox series

[net-next,2/2] net: vlan: Inherit MPLS features from parent device

Message ID 1559601394-5363-3-git-send-email-lariel@mellanox.com
State Accepted
Delegated to: David Ahern
Headers show
Series Support MPLS features in bonding and vlan net devices | expand

Commit Message

Ariel Levkovich June 3, 2019, 10:36 p.m. UTC
During the creation of the VLAN interface net device,
the various device features and offloads are being set based
on the parent device's features.
The code initiates the basic, vlan and encapsulation features
but doesn't address the MPLS features set and they remain blank.
As a result, all device offloads that have significant performance
effect are disabled for MPLS traffic going via this VLAN device such
as checksumming and TSO.

This patch makes sure that MPLS features are also set for the
VLAN device based on the parent which will allow HW offloads of
checksumming and TSO to be performed on MPLS tagged packets.

Signed-off-by: Ariel Levkovich <lariel@mellanox.com>
---
 net/8021q/vlan_dev.c | 1 +
 1 file changed, 1 insertion(+)
diff mbox series

Patch

diff --git a/net/8021q/vlan_dev.c b/net/8021q/vlan_dev.c
index f044ae5..585e73d 100644
--- a/net/8021q/vlan_dev.c
+++ b/net/8021q/vlan_dev.c
@@ -582,6 +582,7 @@  static int vlan_dev_init(struct net_device *dev)
 
 	dev->vlan_features = real_dev->vlan_features & ~NETIF_F_ALL_FCOE;
 	dev->hw_enc_features = vlan_tnl_features(real_dev);
+	dev->mpls_features = real_dev->mpls_features;
 
 	/* ipv6 shared card related stuff */
 	dev->dev_id = real_dev->dev_id;