diff options
Diffstat (limited to 'net/core/skbuff.c')
-rw-r--r-- | net/core/skbuff.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index c96559574a3..1b64817d7de 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -276,20 +276,14 @@ void kfree_skbmem(struct sk_buff *skb) void __kfree_skb(struct sk_buff *skb) { - if (skb->list) { - printk(KERN_WARNING "Warning: kfree_skb passed an skb still " - "on a list (from %p).\n", NET_CALLER(skb)); - BUG(); - } + BUG_ON(skb->list != NULL); dst_release(skb->dst); #ifdef CONFIG_XFRM secpath_put(skb->sp); #endif - if(skb->destructor) { - if (in_irq()) - printk(KERN_WARNING "Warning: kfree_skb on " - "hard IRQ %p\n", NET_CALLER(skb)); + if (skb->destructor) { + WARN_ON(in_irq()); skb->destructor(skb); } #ifdef CONFIG_NETFILTER |