Lines Matching full:pte
96 #include <machine/pte.h>
179 /* Get a pointer to a PTE in a page table. */
200 /* Get a pointer to a PTE in a page table, or the next closest (greater) one. */
206 pte_t *pte; in pte_find_next() local
230 pte = &pm_root[i][j][k][l]; in pte_find_next()
231 if (!PTE_ISVALID(pte)) in pte_find_next()
237 return (pte); in pte_find_next()
315 * when removing pte entry from ptbl.
364 * Increment hold count for ptbl pages. This routine is used when new pte
380 * Clean pte entry, try to free page table page if requested.
388 pte_t *pte; in pte_remove() local
390 pte = pte_find(pmap, va); in pte_remove()
391 KASSERT(pte != NULL, ("%s: NULL pte for va %#jx, pmap %p", in pte_remove()
394 if (!PTE_ISVALID(pte)) in pte_remove()
397 /* Get vm_page_t for mapped pte. */ in pte_remove()
398 m = PHYS_TO_VM_PAGE(PTE_PA(pte)); in pte_remove()
400 if (PTE_ISWIRED(pte)) in pte_remove()
404 if (PTE_ISMANAGED(pte)) { in pte_remove()
406 if (PTE_ISMODIFIED(pte)) in pte_remove()
410 if (PTE_ISREFERENCED(pte)) in pte_remove()
424 *pte = 0; in pte_remove()
438 * Insert PTE for a given page and virtual address.
445 pte_t *ptbl, *pte, pte_tmp; in pte_enter() local
455 pte = &ptbl[ptbl_idx]; in pte_enter()
461 pte = &ptbl[ptbl_idx]; in pte_enter()
462 if (PTE_ISVALID(pte)) { in pte_enter()
466 * pte is not used, increment hold count for ptbl in pte_enter()
494 *pte = pte_tmp; in pte_enter()
507 pte_t *pte; in pte_vatopa() local
509 pte = pte_find(pmap, va); in pte_vatopa()
510 if ((pte != NULL) && PTE_ISVALID(pte)) in pte_vatopa()
511 pa = (PTE_PA(pte) | (va & PTE_PA_MASK)); in pte_vatopa()
515 /* allocate pte entries to manage (addr & mask) to (addr & mask) + size */
519 pte_t *pte; in kernel_pte_alloc() local
564 pte = &(kernel_pmap->pm_root[PG_ROOT_IDX(va)][PDIR_L1_IDX(va)][PDIR_IDX(va)][PTBL_IDX(va)]); in kernel_pte_alloc()
565 *pte = PTE_RPN_FROM_PA(kernload + (va - kernstart)); in kernel_pte_alloc()
566 *pte |= PTE_M | PTE_SR | PTE_SW | PTE_SX | PTE_WIRED | in kernel_pte_alloc()
636 pte_t *pte; in mmu_booke_sync_icache() local
642 pte = pte_find(pm, va); in mmu_booke_sync_icache()
643 valid = (pte != NULL && PTE_ISVALID(pte)) ? 1 : 0; in mmu_booke_sync_icache()
645 pa = PTE_PA(pte); in mmu_booke_sync_icache()