static pte_t *page_check_address(struct page *page, struct mm_struct *mm, unsigned long address) 
pte_t *page_check_address(struct page *page, struct mm_struct *mm, unsigned long address) 
static pte_t *page_check_address(struct page *page, struct mm_struct *mm,					unsigned long address){	pgd_t *pgd;	pud_t *pud;	pmd_t *pmd;	pte_t *pte;	/*	 * We need the page_table_lock to protect us from page faults,	 * munmap, fork, etc...	 */	spin_lock(&mm->page_table_lock);	pgd = pgd_offset(mm, address);	if (likely(pgd_present(*pgd))) {		pud = pud_offset(pgd, address);		if (likely(pud_present(*pud))) {			pmd = pmd_offset(pud, address);			if (likely(pmd_present(*pmd))) {				pte = pte_offset_map(pmd, address);				if (likely(pte_present(*pte) &&					   page_to_pfn(page) == pte_pfn(*pte)))					return pte;				pte_unmap(pte);			}		}	}	spin_unlock(&mm->page_table_lock);	return ERR_PTR(-ENOENT);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/ceffc078528befc008c6f2c2c4decda79eabd534/rmap.c/buggy/mm/rmap.c