if (fi && (fi->fib_flags&RTNH_F_DEAD)) { write_lock_bh(&fib_lock); list_del(&fa->fa_list); write_unlock_bh(&fib_lock);  fn_free_alias(fa); 
if (fi && (fi->fib_flags & RTNH_F_DEAD)) { list_del_rcu(&fa->fa_list); fib_release_info(fa->fa_info); alias_free_mem_rcu(fa); 
static int trie_flush_list(struct trie *t, struct list_head *head){	struct fib_alias *fa, *fa_node;	int found = 0;	list_for_each_entry_safe(fa, fa_node, head, fa_list) {		struct fib_info *fi = fa->fa_info;		if (fi && (fi->fib_flags&RTNH_F_DEAD)) { 			write_lock_bh(&fib_lock);			list_del(&fa->fa_list);			write_unlock_bh(&fib_lock);			fn_free_alias(fa);			found++;		}	}	return found;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/2373ce1ca04dd46bf2b8b0f9a799eb2a90da92fb/fib_trie.c/buggy/net/ipv4/fib_trie.c