net: vxlan: enable local checksum offload
Signed-off-by: Edward Cree <ecree@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
21e2e7f9b5
commit
b57085019d
|
@ -1702,10 +1702,8 @@ static int vxlan_build_skb(struct sk_buff *skb, struct dst_entry *dst,
|
||||||
if (csum_start <= VXLAN_MAX_REMCSUM_START &&
|
if (csum_start <= VXLAN_MAX_REMCSUM_START &&
|
||||||
!(csum_start & VXLAN_RCO_SHIFT_MASK) &&
|
!(csum_start & VXLAN_RCO_SHIFT_MASK) &&
|
||||||
(skb->csum_offset == offsetof(struct udphdr, check) ||
|
(skb->csum_offset == offsetof(struct udphdr, check) ||
|
||||||
skb->csum_offset == offsetof(struct tcphdr, check))) {
|
skb->csum_offset == offsetof(struct tcphdr, check)))
|
||||||
udp_sum = false;
|
|
||||||
type |= SKB_GSO_TUNNEL_REMCSUM;
|
type |= SKB_GSO_TUNNEL_REMCSUM;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
min_headroom = LL_RESERVED_SPACE(dst->dev) + dst->header_len
|
min_headroom = LL_RESERVED_SPACE(dst->dev) + dst->header_len
|
||||||
|
@ -1723,7 +1721,7 @@ static int vxlan_build_skb(struct sk_buff *skb, struct dst_entry *dst,
|
||||||
if (WARN_ON(!skb))
|
if (WARN_ON(!skb))
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
skb = iptunnel_handle_offloads(skb, udp_sum, type);
|
skb = iptunnel_handle_offloads(skb, false, type);
|
||||||
if (IS_ERR(skb))
|
if (IS_ERR(skb))
|
||||||
return PTR_ERR(skb);
|
return PTR_ERR(skb);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue