Lines Matching defs:vaddr
118 void print_pte_vaddr (unsigned long vaddr)
120 pr_cont(" vaddr=%lx [%02lx]", vaddr, sun3_get_segmap (vaddr));
121 print_pte (__pte (sun3_get_pte (vaddr)));
276 * Dynamically select a `spare' PMEG and use it to map virtual `vaddr' in
283 inline void mmu_emu_map_pmeg (int context, int vaddr)
289 vaddr &= ~SUN3_PMEG_MASK;
297 pr_info("mmu_emu_map_pmeg: pmeg %x to context %d vaddr %x\n",
298 curr_pmeg, context, vaddr);
310 if(vaddr >= PAGE_OFFSET) {
316 sun3_put_segmap (vaddr, curr_pmeg);
326 sun3_put_segmap (vaddr, curr_pmeg);
329 pmeg_vaddr[curr_pmeg] = vaddr;
333 sun3_put_pte (vaddr + i, SUN3_PAGE_SYSTEM);
340 * Handle a pagefault at virtual address `vaddr'; check if there should be a
355 int mmu_emu_handle_fault (unsigned long vaddr, int read_flag, int kernel_fault)
374 pr_info("mmu_emu_handle_fault: vaddr=%lx type=%s crp=%p\n",
375 vaddr, read_flag ? "read" : "write", crp);
378 segment = (vaddr >> SUN3_PMEG_SIZE_BITS) & 0x7FF;
379 offset = (vaddr >> SUN3_PTE_SIZE_BITS) & 0xF;
401 if (sun3_get_segmap (vaddr&~SUN3_PMEG_MASK) == SUN3_INVALID_PMEG)
402 mmu_emu_map_pmeg (context, vaddr);
405 sun3_put_pte (vaddr&PAGE_MASK, pte_val (*pte));
423 print_pte_vaddr (vaddr);