diff options
Diffstat (limited to 'net/ipv6/reassembly.c')
-rw-r--r-- | net/ipv6/reassembly.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c index 18f3498a6c80..e2ea31175ef9 100644 --- a/net/ipv6/reassembly.c +++ b/net/ipv6/reassembly.c | |||
@@ -496,10 +496,8 @@ static int ip6_frag_reasm(struct frag_queue *fq, struct sk_buff *prev, | |||
496 | IP6CB(head)->flags |= IP6SKB_FRAGMENTED; | 496 | IP6CB(head)->flags |= IP6SKB_FRAGMENTED; |
497 | 497 | ||
498 | /* Yes, and fold redundant checksum back. 8) */ | 498 | /* Yes, and fold redundant checksum back. 8) */ |
499 | if (head->ip_summed == CHECKSUM_COMPLETE) | 499 | skb_postpush_rcsum(head, skb_network_header(head), |
500 | head->csum = csum_partial(skb_network_header(head), | 500 | skb_network_header_len(head)); |
501 | skb_network_header_len(head), | ||
502 | head->csum); | ||
503 | 501 | ||
504 | rcu_read_lock(); | 502 | rcu_read_lock(); |
505 | IP6_INC_STATS_BH(net, __in6_dev_get(dev), IPSTATS_MIB_REASMOKS); | 503 | IP6_INC_STATS_BH(net, __in6_dev_get(dev), IPSTATS_MIB_REASMOKS); |