BUG_ON(tmp == NULL); 
static void nf_ct_frag6_evictor(void){	struct nf_ct_frag6_queue *fq;	struct list_head *tmp;	unsigned int work;	work = atomic_read(&nf_ct_frag6_mem);	if (work <= nf_ct_frag6_low_thresh)		return;	work -= nf_ct_frag6_low_thresh;	while (work > 0) {		read_lock(&nf_ct_frag6_lock);		if (list_empty(&nf_ct_frag6_lru_list)) {			read_unlock(&nf_ct_frag6_lock);			return;		}		tmp = nf_ct_frag6_lru_list.next;		fq = list_entry(tmp, struct nf_ct_frag6_queue, lru_list);		atomic_inc(&fq->refcnt);		read_unlock(&nf_ct_frag6_lock);		spin_lock(&fq->lock);		if (!(fq->last_in&COMPLETE))			fq_kill(fq);		spin_unlock(&fq->lock);		fq_put(fq, &work);	}}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/302fe1758d85ad9c868e77625f61b7edad106381/nf_conntrack_reasm.c/buggy/net/ipv6/netfilter/nf_conntrack_reasm.c