diff --git a/net/core/dev.c b/net/core/dev.c index 533a6d6f60920a01e8a9cef8fdb408950b914b05..9b5875388c23c4f3306124697fd291c40fb6e6cd 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -2450,6 +2450,9 @@ void __dev_kfree_skb_irq(struct sk_buff *skb, enum skb_free_reason reason) { unsigned long flags; + if (unlikely(!skb)) + return; + if (likely(atomic_read(&skb->users) == 1)) { smp_rmb(); atomic_set(&skb->users, 0);