@@ -4,6 +4,23 @@
#include <linux/version.h>
+#if LINUX_VERSION_IS_LESS(4,4,10)
+static __always_inline void
+__skb_postpush_rcsum(struct sk_buff *skb, const void *start, unsigned int len,
+ unsigned int off)
+{
+ if (skb->ip_summed == CHECKSUM_COMPLETE)
+ skb->csum = csum_block_add(skb->csum,
+ csum_partial(start, len, 0), off);
+}
+
+static inline void skb_postpush_rcsum(struct sk_buff *skb,
+ const void *start, unsigned int len)
+{
+ __skb_postpush_rcsum(skb, start, len, 0);
+}
+#endif /* LINUX_VERSION_IS_LESS(4,4,10) */
+
#if LINUX_VERSION_IS_LESS(4,13,0)
static inline void *backport_skb_put(struct sk_buff *skb, unsigned int len)
{