diff --git a/net/core/skbuff.c b/net/core/skbuff.c index 84bdfa229b0d428504170bcfc836b12fc6a2057f..c27da51d14e4903937b34efe839999cfca2e049e 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -638,7 +638,8 @@ void skb_release_head_state(struct sk_buff *skb) static void skb_release_all(struct sk_buff *skb) { skb_release_head_state(skb); - skb_release_data(skb); + if (likely(skb->head)) + skb_release_data(skb); } /**