net: bonding: Inherit MPLS features from slave devices
authorAriel Levkovich <lariel@mellanox.com>
Mon, 3 Jun 2019 22:36:46 +0000 (22:36 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 4 Jun 2019 21:49:38 +0000 (14:49 -0700)
commit2e770b507ccde8eedc129946e4b78ceed0a22df2
treeed2c42c5548e6f0f7ed6ba99d0807615931715cf
parentb20ac8da76ed529a3912debb8b074a6323545944
net: bonding: Inherit MPLS features from slave devices

When setting the bonding interface net device features,
the kernel code doesn't address the slaves' MPLS features
and doesn't inherit them.

Therefore, HW offloads that enhance performance such as
checksumming and TSO are disabled for MPLS tagged traffic
flowing via the bonding interface.

The patch add the inheritance of the MPLS features from the
slave devices with a similar logic to setting the bonding device's
VLAN and encapsulation features.

CC: Jay Vosburgh <j.vosburgh@gmail.com>
CC: Veaceslav Falico <vfalico@gmail.com>
CC: Andy Gospodarek <andy@greyhouse.net>
Signed-off-by: Ariel Levkovich <lariel@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bonding/bond_main.c