net: Use skb_checksum_start_offset()
[firefly-linux-kernel-4.4.55.git] / net / ipv4 / udp.c
index b37181da487cc22164f8b9f6fe0f160ee742a36f..1198adf4510214338a37629959d1508335d6da1f 100644 (file)
@@ -2226,7 +2226,7 @@ struct sk_buff *udp4_ufo_fragment(struct sk_buff *skb, int features)
        /* Do software UFO. Complete and fill in the UDP checksum as HW cannot
         * do checksum of UDP packets sent as multiple IP fragments.
         */
-       offset = skb->csum_start - skb_headroom(skb);
+       offset = skb_checksum_start_offset(skb);
        csum = skb_checksum(skb, offset, skb->len - offset, 0);
        offset += skb->csum_offset;
        *(__sum16 *)(skb->data + offset) = csum_fold(csum);