diff options
-rw-r--r-- | net/core/skbuff.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index d9e8736bcdc1..c35b81b80fe2 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c | |||
@@ -2854,7 +2854,7 @@ struct sk_buff *skb_segment(struct sk_buff *skb, netdev_features_t features) | |||
2854 | doffset + tnl_hlen); | 2854 | doffset + tnl_hlen); |
2855 | 2855 | ||
2856 | if (fskb != skb_shinfo(skb)->frag_list) | 2856 | if (fskb != skb_shinfo(skb)->frag_list) |
2857 | continue; | 2857 | goto perform_csum_check; |
2858 | 2858 | ||
2859 | if (!sg) { | 2859 | if (!sg) { |
2860 | nskb->ip_summed = CHECKSUM_NONE; | 2860 | nskb->ip_summed = CHECKSUM_NONE; |
@@ -2918,6 +2918,7 @@ skip_fraglist: | |||
2918 | nskb->len += nskb->data_len; | 2918 | nskb->len += nskb->data_len; |
2919 | nskb->truesize += nskb->data_len; | 2919 | nskb->truesize += nskb->data_len; |
2920 | 2920 | ||
2921 | perform_csum_check: | ||
2921 | if (!csum) { | 2922 | if (!csum) { |
2922 | nskb->csum = skb_checksum(nskb, doffset, | 2923 | nskb->csum = skb_checksum(nskb, doffset, |
2923 | nskb->len - doffset, 0); | 2924 | nskb->len - doffset, 0); |