printk("__ioremap(): phys addr "PTE_FMT" is RAM lr %p\n", p, 
printk("__ioremap(): phys addr "PHYS_FMT" is RAM lr %p\n", p, 
__ioremap(phys_addr_t addr, unsigned long size, unsigned long flags){	unsigned long v, i;	phys_addr_t p;	int err;	/*	 * Choose an address to map it to.	 * Once the vmalloc system is running, we use it.	 * Before then, we use space going down from ioremap_base	 * (ioremap_bot records where we're up to).	 */	p = addr & PAGE_MASK;	size = PAGE_ALIGN(addr + size) - p;	/*	 * If the address lies within the first 16 MB, assume it's in ISA	 * memory space	 */	if (p < 16*1024*1024)		p += _ISA_MEM_BASE;	/*	 * Don't allow anybody to remap normal RAM that we're using.	 * mem_init() sets high_memory so only do the check after that.	 */	if ( mem_init_done && (p < virt_to_phys(high_memory)) )	{		printk("__ioremap(): phys addr "PTE_FMT" is RAM lr %p\n", p,		       __builtin_return_address(0));		return NULL;	}	if (size == 0)		return NULL;	/*	 * Is it already mapped?  Perhaps overlapped by a previous	 * BAT mapping.  If the whole area is mapped then we're done,	 * otherwise remap it since we want to keep the virt addrs for	 * each request contiguous.	 *	 * We make the assumption here that if the bottom and top	 * of the range we want are mapped then it's mapped to the	 * same virt address (and this is contiguous).	 *  -- Cort	 */	if ((v = p_mapped_by_bats(p)) /*&& p_mapped_by_bats(p+size-1)*/ )		goto out;	if ((v = p_mapped_by_tlbcam(p)))		goto out;	if (mem_init_done) {		struct vm_struct *area;		area = get_vm_area(size, VM_IOREMAP);		if (area == 0)			return NULL;		v = (unsigned long) area->addr;	} else {		v = (ioremap_bot -= size);	}	if ((flags & _PAGE_PRESENT) == 0)		flags |= _PAGE_KERNEL;	if (flags & _PAGE_NO_CACHE)		flags |= _PAGE_GUARDED;	/*	 * Should check if it is a candidate for a BAT mapping	 */	err = 0;	for (i = 0; i < size && err == 0; i += PAGE_SIZE)		err = map_page(v+i, p+i, flags);	if (err) {		if (mem_init_done)			vunmap((void *)v);		return NULL;	}out:	return (void __iomem *) (v + ((unsigned long)addr & ~PAGE_MASK));}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/a85f6d4aca822acdb49d27c44519cd6514b06a1d/pgtable.c/buggy/arch/ppc/mm/pgtable.c