if (REGION_NUMBER(addr) == REGION_HPAGE) 
if (REGION_NUMBER(addr) == RGN_HPAGE) 
arch_get_unmapped_area (struct file *filp, unsigned long addr, unsigned long len,			unsigned long pgoff, unsigned long flags){	long map_shared = (flags & MAP_SHARED);	unsigned long start_addr, align_mask = PAGE_SIZE - 1;	struct mm_struct *mm = current->mm;	struct vm_area_struct *vma;	if (len > RGN_MAP_LIMIT)		return -ENOMEM;#ifdef CONFIG_HUGETLB_PAGE	if (REGION_NUMBER(addr) == REGION_HPAGE)		addr = 0;#endif	if (!addr)		addr = mm->free_area_cache;	if (map_shared && (TASK_SIZE > 0xfffffffful))		/*		 * For 64-bit tasks, align shared segments to 1MB to avoid potential		 * performance penalty due to virtual aliasing (see ASDM).  For 32-bit		 * tasks, we prefer to avoid exhausting the address space too quickly by		 * limiting alignment to a single page.		 */		align_mask = SHMLBA - 1;  full_search:	start_addr = addr = (addr + align_mask) & ~align_mask;	for (vma = find_vma(mm, addr); ; vma = vma->vm_next) {		/* At this point:  (!vma || addr < vma->vm_end). */		if (TASK_SIZE - len < addr || RGN_MAP_LIMIT - len < REGION_OFFSET(addr)) {			if (start_addr != TASK_UNMAPPED_BASE) {				/* Start a new search --- just in case we missed some holes.  */				addr = TASK_UNMAPPED_BASE;				goto full_search;			}			return -ENOMEM;		}		if (!vma || addr + len <= vma->vm_start) {			/* Remember the address where we stopped this search:  */			mm->free_area_cache = addr + len;			return addr;		}		addr = (vma->vm_end + align_mask) & ~align_mask;	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0a41e2501160587eb8f66cef3bdf1c6f2cb86997/sys_ia64.c/clean/arch/ia64/kernel/sys_ia64.c