diff options
Diffstat (limited to 'include/linux/netdevice.h')
| -rw-r--r-- | include/linux/netdevice.h | 9 | 
1 files changed, 7 insertions, 2 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 994f7423a74b..9bde9558b596 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -2477,14 +2477,19 @@ static inline int skb_gro_header_hard(struct sk_buff *skb, unsigned int hlen)  	return NAPI_GRO_CB(skb)->frag0_len < hlen;  } +static inline void skb_gro_frag0_invalidate(struct sk_buff *skb) +{ +	NAPI_GRO_CB(skb)->frag0 = NULL; +	NAPI_GRO_CB(skb)->frag0_len = 0; +} +  static inline void *skb_gro_header_slow(struct sk_buff *skb, unsigned int hlen,  					unsigned int offset)  {  	if (!pskb_may_pull(skb, hlen))  		return NULL; -	NAPI_GRO_CB(skb)->frag0 = NULL; -	NAPI_GRO_CB(skb)->frag0_len = 0; +	skb_gro_frag0_invalidate(skb);  	return skb->data + offset;  }  | 
