diff options
-rw-r--r-- | net/ipv4/ipcomp.c | 3 | ||||
-rw-r--r-- | net/ipv6/ipcomp6.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/net/ipv4/ipcomp.c b/net/ipv4/ipcomp.c index 8e0374847532..8a8b5cf2f7fe 100644 --- a/net/ipv4/ipcomp.c +++ b/net/ipv4/ipcomp.c | |||
@@ -70,7 +70,8 @@ static int ipcomp_decompress(struct xfrm_state *x, struct sk_buff *skb) | |||
70 | if (err) | 70 | if (err) |
71 | goto out; | 71 | goto out; |
72 | 72 | ||
73 | skb_put(skb, dlen - plen); | 73 | skb->truesize += dlen - plen; |
74 | __skb_put(skb, dlen - plen); | ||
74 | memcpy(skb->data, scratch, dlen); | 75 | memcpy(skb->data, scratch, dlen); |
75 | out: | 76 | out: |
76 | put_cpu(); | 77 | put_cpu(); |
diff --git a/net/ipv6/ipcomp6.c b/net/ipv6/ipcomp6.c index b285b0357084..7e4d1c17bfbc 100644 --- a/net/ipv6/ipcomp6.c +++ b/net/ipv6/ipcomp6.c | |||
@@ -109,7 +109,8 @@ static int ipcomp6_input(struct xfrm_state *x, struct sk_buff *skb) | |||
109 | goto out_put_cpu; | 109 | goto out_put_cpu; |
110 | } | 110 | } |
111 | 111 | ||
112 | skb_put(skb, dlen - plen); | 112 | skb->truesize += dlen - plen; |
113 | __skb_put(skb, dlen - plen); | ||
113 | memcpy(skb->data, scratch, dlen); | 114 | memcpy(skb->data, scratch, dlen); |
114 | err = ipch->nexthdr; | 115 | err = ipch->nexthdr; |
115 | 116 | ||