File tree Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Original file line number Diff line number Diff line change @@ -1545,6 +1545,7 @@ static void bond_compute_features(struct bonding *bond)
1545
1545
{
1546
1546
unsigned int dst_release_flag = IFF_XMIT_DST_RELEASE |
1547
1547
IFF_XMIT_DST_RELEASE_PERM ;
1548
+ netdev_features_t gso_partial_features = NETIF_F_GSO_ESP ;
1548
1549
netdev_features_t vlan_features = BOND_VLAN_FEATURES ;
1549
1550
netdev_features_t enc_features = BOND_ENC_FEATURES ;
1550
1551
#ifdef CONFIG_XFRM_OFFLOAD
@@ -1577,6 +1578,9 @@ static void bond_compute_features(struct bonding *bond)
1577
1578
BOND_XFRM_FEATURES );
1578
1579
#endif /* CONFIG_XFRM_OFFLOAD */
1579
1580
1581
+ if (slave -> dev -> hw_enc_features & NETIF_F_GSO_PARTIAL )
1582
+ gso_partial_features &= slave -> dev -> gso_partial_features ;
1583
+
1580
1584
mpls_features = netdev_increment_features (mpls_features ,
1581
1585
slave -> dev -> mpls_features ,
1582
1586
BOND_MPLS_FEATURES );
@@ -1590,6 +1594,11 @@ static void bond_compute_features(struct bonding *bond)
1590
1594
}
1591
1595
bond_dev -> hard_header_len = max_hard_header_len ;
1592
1596
1597
+ if (gso_partial_features & NETIF_F_GSO_ESP )
1598
+ bond_dev -> gso_partial_features |= NETIF_F_GSO_ESP ;
1599
+ else
1600
+ bond_dev -> gso_partial_features &= ~NETIF_F_GSO_ESP ;
1601
+
1593
1602
done :
1594
1603
bond_dev -> vlan_features = vlan_features ;
1595
1604
bond_dev -> hw_enc_features = enc_features | NETIF_F_GSO_ENCAP_ALL |
You can’t perform that action at this time.
0 commit comments