pmdp = pmd_offset(pgdp, address); 
pudp = pud_offset(pgdp, address); pmdp = pmd_offset(pudp, address); 
void __update_tlb(struct vm_area_struct *vma, unsigned long address, pte_t pte){	unsigned long flags;	pgd_t *pgdp;	pmd_t *pmdp;	pte_t *ptep;	int idx, pid;	/*	 * Handle debugger faulting in for debugee.	 */	if (current->active_mm != vma->vm_mm)		return;	local_irq_save(flags);	pid = read_c0_entryhi() & ASID_MASK;	address &= (PAGE_MASK << 1);	write_c0_entryhi(address | (pid));	pgdp = pgd_offset(vma->vm_mm, address);	tlb_probe();	pmdp = pmd_offset(pgdp, address);	idx = read_c0_index();	ptep = pte_offset_map(pmdp, address);	write_c0_entrylo0(pte_val(*ptep++) >> 6);	write_c0_entrylo1(pte_val(*ptep) >> 6);	if (idx < 0) {		tlb_write_random();	} else {		tlb_write_indexed();	}	local_irq_restore(flags);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/172546bf601356f94f8018af7908a9b7c1c4915c/tlb-sb1.c/buggy/arch/mips/mm/tlb-sb1.c