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)); 
if (error) *error = 1; return 0UL; 
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