diff options
Diffstat (limited to 'net/l2tp/l2tp_core.c')
-rw-r--r-- | net/l2tp/l2tp_core.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/net/l2tp/l2tp_core.c b/net/l2tp/l2tp_core.c index b6ba65fa3c50..dcfd64e83ab7 100644 --- a/net/l2tp/l2tp_core.c +++ b/net/l2tp/l2tp_core.c | |||
@@ -1168,8 +1168,6 @@ int l2tp_xmit_skb(struct l2tp_session *session, struct sk_buff *skb, int hdr_len | |||
1168 | struct udphdr *uh; | 1168 | struct udphdr *uh; |
1169 | struct inet_sock *inet; | 1169 | struct inet_sock *inet; |
1170 | __wsum csum; | 1170 | __wsum csum; |
1171 | int old_headroom; | ||
1172 | int new_headroom; | ||
1173 | int headroom; | 1171 | int headroom; |
1174 | int uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; | 1172 | int uhlen = (tunnel->encap == L2TP_ENCAPTYPE_UDP) ? sizeof(struct udphdr) : 0; |
1175 | int udp_len; | 1173 | int udp_len; |
@@ -1181,16 +1179,12 @@ int l2tp_xmit_skb(struct l2tp_session *session, struct sk_buff *skb, int hdr_len | |||
1181 | */ | 1179 | */ |
1182 | headroom = NET_SKB_PAD + sizeof(struct iphdr) + | 1180 | headroom = NET_SKB_PAD + sizeof(struct iphdr) + |
1183 | uhlen + hdr_len; | 1181 | uhlen + hdr_len; |
1184 | old_headroom = skb_headroom(skb); | ||
1185 | if (skb_cow_head(skb, headroom)) { | 1182 | if (skb_cow_head(skb, headroom)) { |
1186 | kfree_skb(skb); | 1183 | kfree_skb(skb); |
1187 | return NET_XMIT_DROP; | 1184 | return NET_XMIT_DROP; |
1188 | } | 1185 | } |
1189 | 1186 | ||
1190 | new_headroom = skb_headroom(skb); | ||
1191 | skb_orphan(skb); | 1187 | skb_orphan(skb); |
1192 | skb->truesize += new_headroom - old_headroom; | ||
1193 | |||
1194 | /* Setup L2TP header */ | 1188 | /* Setup L2TP header */ |
1195 | session->build_header(session, __skb_push(skb, hdr_len)); | 1189 | session->build_header(session, __skb_push(skb, hdr_len)); |
1196 | 1190 | ||