Lines Matching defs:vaddr
117 void print_pte_vaddr (unsigned long vaddr)
119 pr_cont(" vaddr=%lx [%02lx]", vaddr, sun3_get_segmap (vaddr));
120 print_pte (__pte (sun3_get_pte (vaddr)));
274 * Dynamically select a `spare' PMEG and use it to map virtual `vaddr' in
281 inline void mmu_emu_map_pmeg (int context, int vaddr)
287 vaddr &= ~SUN3_PMEG_MASK;
295 pr_info("mmu_emu_map_pmeg: pmeg %x to context %d vaddr %x\n",
296 curr_pmeg, context, vaddr);
308 if(vaddr >= PAGE_OFFSET) {
314 sun3_put_segmap (vaddr, curr_pmeg);
324 sun3_put_segmap (vaddr, curr_pmeg);
327 pmeg_vaddr[curr_pmeg] = vaddr;
331 sun3_put_pte (vaddr + i, SUN3_PAGE_SYSTEM);
338 * Handle a pagefault at virtual address `vaddr'; check if there should be a
353 int mmu_emu_handle_fault (unsigned long vaddr, int read_flag, int kernel_fault)
372 pr_info("%s: vaddr=%lx type=%s crp=%p\n", __func__, vaddr,
376 segment = (vaddr >> SUN3_PMEG_SIZE_BITS) & 0x7FF;
377 offset = (vaddr >> SUN3_PTE_SIZE_BITS) & 0xF;
398 if (sun3_get_segmap (vaddr&~SUN3_PMEG_MASK) == SUN3_INVALID_PMEG)
399 mmu_emu_map_pmeg (context, vaddr);
402 sun3_put_pte (vaddr&PAGE_MASK, pte_val (*pte));
420 print_pte_vaddr (vaddr);