diff --git a/net/core/skbuff.c b/net/core/skbuff.c index 266b954f763eb8bebc7e6400199b9ed885cd3556..51b0a9126e121c3cf092a6baaa6fe58d749213a2 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -1715,7 +1715,7 @@ void *skb_push(struct sk_buff *skb, unsigned int len) { skb->data -= len; skb->len += len; - if (unlikely(skb->datahead)) + if (unlikely(skb->data < skb->head)) skb_under_panic(skb, len, __builtin_return_address(0)); return skb->data; }