return shift; next: shift++; 
int __init compute_hash_shift(struct node *nodes, int numnodes){	int i; 	int shift = 24;	u64 addr;		/* When in doubt use brute force. */	while (shift < 48) { 		memset(memnodemap,0xff,sizeof(*memnodemap) * NODEMAPSIZE); 		for (i = 0; i < numnodes; i++) {			if (nodes[i].start == nodes[i].end) 				continue;			for (addr = nodes[i].start; 			     addr < nodes[i].end; 			     addr += (1UL << shift)) {				if (memnodemap[addr >> shift] != 0xff && 				    memnodemap[addr >> shift] != i) { 					printk(KERN_INFO 					    "node %d shift %d addr %Lx conflict %d\n", 					       i, shift, addr, memnodemap[addr>>shift]);					goto next; 				} 				memnodemap[addr >> shift] = i; 			} 		} 		return shift; 	next:		shift++; 	} 	memset(memnodemap,0,sizeof(*memnodemap) * NODEMAPSIZE); 	return -1; }
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b684664fd495fd640353c0f786751763db77dcfb/numa.c/buggy/arch/x86_64/mm/numa.c