mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 22:51:35 +00:00
udp: not remove the CRC flag from dev features when need_csum is false
In __skb_udp_tunnel_segment(), when it's a SCTP over VxLAN/GENEVE packet and need_csum is false, which means the outer udp checksum doesn't need to be computed, csum_start and csum_offset could be used by the inner SCTP CRC CSUM for SCTP HW CRC offload. So this patch is to not remove the CRC flag from dev features when need_csum is false. Signed-off-by: Xin Long <lucien.xin@gmail.com> Link: https://lore.kernel.org/r/1e81b700642498546eaa3f298e023fd7ad394f85.1610776757.git.lucien.xin@gmail.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
7baf2429a1
commit
4eb5d4a5b4
@ -68,8 +68,8 @@ static struct sk_buff *__skb_udp_tunnel_segment(struct sk_buff *skb,
|
||||
(NETIF_F_HW_CSUM | NETIF_F_IP_CSUM))));
|
||||
|
||||
features &= skb->dev->hw_enc_features;
|
||||
/* CRC checksum can't be handled by HW when it's a UDP tunneling packet. */
|
||||
features &= ~NETIF_F_SCTP_CRC;
|
||||
if (need_csum)
|
||||
features &= ~NETIF_F_SCTP_CRC;
|
||||
|
||||
/* The only checksum offload we care about from here on out is the
|
||||
* outer one so strip the existing checksum feature flags and
|
||||
|
Loading…
Reference in New Issue
Block a user