for (p = &xfrm_policy_list[id & 7]; (pol=*p)!=NULL; p = &pol->next) { 
for (p = &xfrm_policy_list[dir]; (pol=*p)!=NULL; p = &pol->next) { 
struct xfrm_policy *xfrm_policy_byid(int dir, u32 id, int delete){	struct xfrm_policy *pol, **p;	write_lock_bh(&xfrm_policy_lock);	for (p = &xfrm_policy_list[id & 7]; (pol=*p)!=NULL; p = &pol->next) {		if (pol->index == id) {			xfrm_pol_hold(pol);			if (delete)				*p = pol->next;			break;		}	}	write_unlock_bh(&xfrm_policy_lock);	if (pol && delete) {		atomic_inc(&flow_cache_genid);		xfrm_policy_kill(pol);	}	return pol;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/77d8d7a6848c81084f413e1ec4982123a56e2ccb/xfrm_policy.c/clean/net/xfrm/xfrm_policy.c