diff options
| author | Johannes Berg <johannes@sipsolutions.net> | 2008-05-12 20:48:31 -0700 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2008-05-12 20:48:31 -0700 | 
| commit | f5184d267c1aedb9b7a8cc44e08ff6b8d382c3b5 (patch) | |
| tree | 5ccce7558f9e1e53e5b189d6e2fe62a667988ac8 /net/xfrm/xfrm_output.c | |
| parent | 8388e3da34edb141362bb42811ee487dfec15525 (diff) | |
| download | olio-linux-3.10-f5184d267c1aedb9b7a8cc44e08ff6b8d382c3b5.tar.xz olio-linux-3.10-f5184d267c1aedb9b7a8cc44e08ff6b8d382c3b5.zip  | |
net: Allow netdevices to specify needed head/tailroom
This patch adds needed_headroom/needed_tailroom members to struct
net_device and updates many places that allocate sbks to use them. Not
all of them can be converted though, and I'm sure I missed some (I
mostly grepped for LL_RESERVED_SPACE)
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
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;  }  |