if (pmd_none(*pmdp)) { if (error) *error = 1; return 0; 
for (i = 0; i < prom_trans_ents; i++) { struct linux_prom_translation *p = &prom_trans[i];  if (promva >= p->virt && promva < (p->virt + p->size)) { unsigned long base = p->data & _PAGE_PADDR;  if (error) *error = 0; return base + (promva & (8192 - 1)); } 
unsigned long prom_virt_to_phys(unsigned long promva, int *error){	pmd_t *pmdp = prompmd + ((promva >> 23) & 0x7ff);	pte_t *ptep;	unsigned long base;	if (pmd_none(*pmdp)) {		if (error)			*error = 1;		return 0;	}	ptep = (pte_t *)__pmd_page(*pmdp) + ((promva >> 13) & 0x3ff);	if (!pte_present(*ptep)) {		if (error)			*error = 1;		return 0;	}	if (error) {		*error = 0;		return pte_val(*ptep);	}	base = pte_val(*ptep) & _PAGE_PADDR;	return base + (promva & (BASE_PAGE_SIZE - 1));}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/c9c10830740df1b5e7848d6fbb68c93a73e8f7cd/init.c/buggy/arch/sparc64/mm/init.c