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); 
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();	}	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));		skb->destructor(skb);	}#ifdef CONFIG_NETFILTER	nf_conntrack_put(skb->nfct);#ifdef CONFIG_BRIDGE_NETFILTER	nf_bridge_put(skb->nf_bridge);#endif#endif/* XXX: IS this still necessary? - JHS */#ifdef CONFIG_NET_SCHED	skb->tc_index = 0;#ifdef CONFIG_NET_CLS_ACT	skb->tc_verd = 0;	skb->tc_classid = 0;#endif#endif	kfree_skbmem(skb);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/9c2b3328f74800bb370d08bb3a4255d5fe833e94/skbuff.c/clean/net/core/skbuff.c