Commit 1cf78d4c authored by Huanhuan Wang's avatar Huanhuan Wang Committed by David S. Miller

nfp: fix esp-tx-csum-offload doesn't take effect

When esp-tx-csum-offload is set to on, the protocol stack shouldn't
calculate the IPsec offload packet's csum, but it does. Because the
callback `.ndo_features_check` incorrectly masked NETIF_F_CSUM_MASK bit.

Fixes: 57f273ad ("nfp: add framework to support ipsec offloading")
Signed-off-by: default avatarHuanhuan Wang <huanhuan.wang@corigine.com>
Signed-off-by: default avatarSimon Horman <simon.horman@corigine.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 8b46168c
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
#include <net/tls.h> #include <net/tls.h>
#include <net/vxlan.h> #include <net/vxlan.h>
#include <net/xdp_sock_drv.h> #include <net/xdp_sock_drv.h>
#include <net/xfrm.h>
#include "nfpcore/nfp_dev.h" #include "nfpcore/nfp_dev.h"
#include "nfpcore/nfp_nsp.h" #include "nfpcore/nfp_nsp.h"
...@@ -1897,6 +1898,9 @@ nfp_net_features_check(struct sk_buff *skb, struct net_device *dev, ...@@ -1897,6 +1898,9 @@ nfp_net_features_check(struct sk_buff *skb, struct net_device *dev,
features &= ~NETIF_F_GSO_MASK; features &= ~NETIF_F_GSO_MASK;
} }
if (xfrm_offload(skb))
return features;
/* VXLAN/GRE check */ /* VXLAN/GRE check */
switch (vlan_get_protocol(skb)) { switch (vlan_get_protocol(skb)) {
case htons(ETH_P_IP): case htons(ETH_P_IP):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment