start = O_PFN_UP(mi->bank[bank].start); end   = O_PFN_DOWN(mi->bank[bank].size + mi->bank[bank].start); 
start = mi->bank[bank].start >> PAGE_SHIFT; end   = (mi->bank[bank].size + mi->bank[bank].start) >> PAGE_SHIFT; 
find_bootmap_pfn(int node, struct meminfo *mi, unsigned int bootmap_pages){	unsigned int start_pfn, bank, bootmap_pfn;	start_pfn   = V_PFN_UP(&_end);	bootmap_pfn = 0;	for (bank = 0; bank < mi->nr_banks; bank ++) {		unsigned int start, end;		if (mi->bank[bank].node != node)			continue;		start = O_PFN_UP(mi->bank[bank].start);		end   = O_PFN_DOWN(mi->bank[bank].size +				   mi->bank[bank].start);		if (end < start_pfn)			continue;		if (start < start_pfn)			start = start_pfn;		if (end <= start)			continue;		if (end - start >= bootmap_pages) {			bootmap_pfn = start;			break;		}	}	if (bootmap_pfn == 0)		BUG();	return bootmap_pfn;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/92a8cbed29eb9bf6e8eec16ca29d54015bc0e8a2/init.c/clean/arch/arm/mm/init.c