diff options
Diffstat (limited to 'net/xfrm/xfrm_output.c')
| -rw-r--r-- | net/xfrm/xfrm_output.c | 6 | 
1 files changed, 3 insertions, 3 deletions
diff --git a/net/xfrm/xfrm_output.c b/net/xfrm/xfrm_output.c index 09cd9c0c2d8..3f964db908a 100644 --- a/net/xfrm/xfrm_output.c +++ b/net/xfrm/xfrm_output.c @@ -25,11 +25,11 @@ static int xfrm_state_check_space(struct xfrm_state *x, struct sk_buff *skb)  	struct dst_entry *dst = skb->dst;  	int nhead = dst->header_len + LL_RESERVED_SPACE(dst->dev)  		- skb_headroom(skb); +	int ntail = dst->dev->needed_tailroom - skb_tailroom(skb); -	if (nhead > 0) -		return pskb_expand_head(skb, nhead, 0, GFP_ATOMIC); +	if (nhead > 0 || ntail > 0) +		return pskb_expand_head(skb, nhead, ntail, GFP_ATOMIC); -	/* Check tail too... */  	return 0;  }  |