Lines Matching refs:pmap

256 struct pmap kernel_pmap_store;
257 LIST_HEAD(pmaplist, pmap);
327 static bool pmap_demote_pte1(pmap_t pmap, pt1_entry_t *pte1p,
329 static int pmap_enter_pte1(pmap_t pmap, vm_offset_t va, pt1_entry_t pte1,
401 pmap_is_valid_memattr(pmap_t pmap __unused, vm_memattr_t mode) in pmap_is_valid_memattr()
1343 pmap_t pmap; in pmap_kenter_pt2tab() local
1347 LIST_FOREACH(pmap, &allpmaps, pm_list) { in pmap_kenter_pt2tab()
1348 pte2p = pmap_pt2tab_entry(pmap, va); in pmap_kenter_pt2tab()
1361 pmap_t pmap; in pmap_kenter_pte1() local
1365 LIST_FOREACH(pmap, &allpmaps, pm_list) { in pmap_kenter_pte1()
1366 pte1p = pmap_pte1(pmap, va); in pmap_kenter_pte1()
1470 pmap_tlb_flush(pmap_t pmap, vm_offset_t va) in pmap_tlb_flush() argument
1473 if (pmap == kernel_pmap || !CPU_EMPTY(&pmap->pm_active)) in pmap_tlb_flush()
1478 pmap_tlb_flush_range(pmap_t pmap, vm_offset_t sva, vm_size_t size) in pmap_tlb_flush_range() argument
1481 if (pmap == kernel_pmap || !CPU_EMPTY(&pmap->pm_active)) in pmap_tlb_flush_range()
1546 SYSCTL_NODE(_vm, OID_AUTO, pmap, CTLFLAG_RD | CTLFLAG_MPSAFE, 0,
1563 pmap_ps_enabled(pmap_t pmap __unused) in pmap_ps_enabled()
1597 pmap_ttb_get(pmap_t pmap) in pmap_ttb_get() argument
1600 return (vtophys(pmap->pm_pt1) | ttb_flags); in pmap_ttb_get()
1679 pmap_pt2pg_init(pmap_t pmap, vm_offset_t va, vm_page_t m) in pmap_pt2pg_init() argument
1696 if (pmap == kernel_pmap) in pmap_pt2pg_init()
1699 pte2p = pmap_pt2tab_entry(pmap, va); in pmap_pt2pg_init()
1848 pmap_is_current(pmap_t pmap) in pmap_is_current() argument
1851 return (pmap == kernel_pmap || in pmap_is_current()
1852 (pmap == vmspace_pmap(curthread->td_proc->p_vmspace))); in pmap_is_current()
1860 pmap_pte2(pmap_t pmap, vm_offset_t va) in pmap_pte2() argument
1865 pte1 = pte1_load(pmap_pte1(pmap, va)); in pmap_pte2()
1870 if (pmap_is_current(pmap)) in pmap_pte2()
1908 pmap_pte2_quick(pmap_t pmap, vm_offset_t va) in pmap_pte2_quick() argument
1913 pte1 = pte1_load(pmap_pte1(pmap, va)); in pmap_pte2_quick()
1918 if (pmap_is_current(pmap)) in pmap_pte2_quick()
1953 pmap_extract(pmap_t pmap, vm_offset_t va) in pmap_extract() argument
1959 PMAP_LOCK(pmap); in pmap_extract()
1960 pte1 = pte1_load(pmap_pte1(pmap, va)); in pmap_extract()
1964 pte2p = pmap_pte2(pmap, va); in pmap_extract()
1969 PMAP_UNLOCK(pmap); in pmap_extract()
1981 pmap_extract_and_hold(pmap_t pmap, vm_offset_t va, vm_prot_t prot) in pmap_extract_and_hold() argument
1989 PMAP_LOCK(pmap); in pmap_extract_and_hold()
1990 pte1 = pte1_load(pmap_pte1(pmap, va)); in pmap_extract_and_hold()
1999 pte2p = pmap_pte2(pmap, va); in pmap_extract_and_hold()
2010 PMAP_UNLOCK(pmap); in pmap_extract_and_hold()
2130 pmap_pinit0(pmap_t pmap) in pmap_pinit0() argument
2132 PDEBUG(1, printf("%s: pmap = %p\n", __func__, pmap)); in pmap_pinit0()
2134 PMAP_LOCK_INIT(pmap); in pmap_pinit0()
2145 pmap->pm_pt1 = kern_pt1; in pmap_pinit0()
2146 pmap->pm_pt2tab = kern_pt2tab; in pmap_pinit0()
2147 CPU_ZERO(&pmap->pm_active); in pmap_pinit0()
2148 PCPU_SET(curpmap, pmap); in pmap_pinit0()
2149 TAILQ_INIT(&pmap->pm_pvchunk); in pmap_pinit0()
2150 bzero(&pmap->pm_stats, sizeof pmap->pm_stats); in pmap_pinit0()
2151 CPU_SET(0, &pmap->pm_active); in pmap_pinit0()
2181 pmap_pinit(pmap_t pmap) in pmap_pinit() argument
2188 PDEBUG(6, printf("%s: pmap = %p, pm_pt1 = %p\n", __func__, pmap, in pmap_pinit()
2189 pmap->pm_pt1)); in pmap_pinit()
2211 if (pmap->pm_pt1 == NULL) { in pmap_pinit()
2212 pmap->pm_pt1 = kmem_alloc_contig(NB_IN_PT1, in pmap_pinit()
2214 if (pmap->pm_pt1 == NULL) in pmap_pinit()
2217 if (pmap->pm_pt2tab == NULL) { in pmap_pinit()
2228 pmap->pm_pt2tab = kmem_alloc_attr(NB_IN_PT2TAB, in pmap_pinit()
2230 if (pmap->pm_pt2tab == NULL) { in pmap_pinit()
2236 kmem_free(pmap->pm_pt1, NB_IN_PT1); in pmap_pinit()
2237 pmap->pm_pt1 = NULL; in pmap_pinit()
2255 pte1_copy_nosync(kern_pt1, pmap->pm_pt1, KERNBASE, in pmap_pinit()
2257 pte1_copy_nosync(kern_pt1, pmap->pm_pt1, vm_max_kernel_address, in pmap_pinit()
2259 pt2tab_copy_nosync(kern_pt2tab, pmap->pm_pt2tab, KERNBASE, in pmap_pinit()
2261 pt2tab_copy_nosync(kern_pt2tab, pmap->pm_pt2tab, vm_max_kernel_address, in pmap_pinit()
2263 LIST_INSERT_HEAD(&allpmaps, pmap, pm_list); in pmap_pinit()
2271 pt2tab_pa = vtophys(pmap->pm_pt2tab); in pmap_pinit()
2272 pte2p = pmap_pt2tab_entry(pmap, (vm_offset_t)PT2MAP); in pmap_pinit()
2278 pte1p = pmap_pte1(pmap, (vm_offset_t)PT2MAP); in pmap_pinit()
2286 pte1_sync_range(pmap->pm_pt1, NB_IN_PT1); in pmap_pinit()
2287 pte2_sync_range(pmap->pm_pt2tab, NB_IN_PT2TAB); in pmap_pinit()
2289 CPU_ZERO(&pmap->pm_active); in pmap_pinit()
2290 TAILQ_INIT(&pmap->pm_pvchunk); in pmap_pinit()
2291 bzero(&pmap->pm_stats, sizeof pmap->pm_stats); in pmap_pinit()
2314 pmap_release(pmap_t pmap) in pmap_release() argument
2319 KASSERT(pmap->pm_stats.resident_count == 0, in pmap_release()
2321 pmap->pm_stats.resident_count)); in pmap_release()
2322 KASSERT(pt2tab_user_is_empty(pmap->pm_pt2tab), in pmap_release()
2324 KASSERT(CPU_EMPTY(&pmap->pm_active), in pmap_release()
2325 ("%s: pmap %p is active on some CPU(s)", __func__, pmap)); in pmap_release()
2328 LIST_REMOVE(pmap, pm_list); in pmap_release()
2334 bzero((char *)pmap->pm_pt1 + start, end - start); in pmap_release()
2338 bzero((char *)pmap->pm_pt2tab + start, end - start); in pmap_release()
2467 _pmap_allocpte2(pmap_t pmap, vm_offset_t va, u_int flags) in _pmap_allocpte2() argument
2476 pte1p = pmap->pm_pt1 + pte1_idx; in _pmap_allocpte2()
2482 pte2 = pt2tab_load(pmap_pt2tab_entry(pmap, va)); in _pmap_allocpte2()
2490 PMAP_UNLOCK(pmap); in _pmap_allocpte2()
2494 PMAP_LOCK(pmap); in _pmap_allocpte2()
2504 pmap->pm_stats.resident_count++; in _pmap_allocpte2()
2505 pt2pg_pa = pmap_pt2pg_init(pmap, va, m); in _pmap_allocpte2()
2519 pmap_allocpte2(pmap_t pmap, vm_offset_t va, u_int flags) in pmap_allocpte2() argument
2527 pte1p = pmap->pm_pt1 + pte1_idx; in pmap_allocpte2()
2535 (void)pmap_demote_pte1(pmap, pte1p, va); in pmap_allocpte2()
2557 m = _pmap_allocpte2(pmap, va, flags); in pmap_allocpte2()
2589 pmap_unwire_pt2pg(pmap_t pmap, vm_offset_t va, vm_page_t m) in pmap_unwire_pt2pg() argument
2596 ("%s: pmap %p PT2PG %p wired", __func__, pmap, m)); in pmap_unwire_pt2pg()
2605 ("%s: pmap %p va %#x PT2PG %p bad index", __func__, pmap, va, m)); in pmap_unwire_pt2pg()
2606 pte1p = pmap->pm_pt1 + m->pindex; in pmap_unwire_pt2pg()
2609 ("%s: pmap %p PT2 %u (PG %p) wired", __func__, pmap, i, m)); in pmap_unwire_pt2pg()
2616 pmap_tlb_flush(pmap, (m->pindex + i) << PTE1_SHIFT); in pmap_unwire_pt2pg()
2622 pmap, va, opte1, i)); in pmap_unwire_pt2pg()
2629 pte2p = pmap_pt2tab_entry(pmap, va); in pmap_unwire_pt2pg()
2631 pmap_tlb_flush(pmap, pt2map_pt2pg(va)); in pmap_unwire_pt2pg()
2634 pmap->pm_stats.resident_count--; in pmap_unwire_pt2pg()
2652 pmap_unwire_pt2(pmap_t pmap, vm_offset_t va, vm_page_t m, struct spglist *free) in pmap_unwire_pt2() argument
2662 pmap_unwire_pt2pg(pmap, va, m); in pmap_unwire_pt2()
2675 pmap_unwire_pt2_all(pmap_t pmap, vm_offset_t va, vm_page_t m, in pmap_unwire_pt2_all() argument
2710 pmap_unwire_pt2pg(pmap, va, m); in pmap_unwire_pt2_all()
2720 pmap_unuse_pt2(pmap_t pmap, vm_offset_t va, struct spglist *free) in pmap_unuse_pt2() argument
2727 pte1 = pte1_load(pmap_pte1(pmap, va)); in pmap_unuse_pt2()
2729 return (pmap_unwire_pt2(pmap, va, mpte, free)); in pmap_unuse_pt2()
2809 pmap_t pmap; in pmap_pv_reclaim() local
2819 pmap = NULL; in pmap_pv_reclaim()
2826 if (pmap != pc->pc_pmap) { in pmap_pv_reclaim()
2827 if (pmap != NULL) { in pmap_pv_reclaim()
2828 if (pmap != locked_pmap) in pmap_pv_reclaim()
2829 PMAP_UNLOCK(pmap); in pmap_pv_reclaim()
2831 pmap = pc->pc_pmap; in pmap_pv_reclaim()
2833 if (pmap > locked_pmap) in pmap_pv_reclaim()
2834 PMAP_LOCK(pmap); in pmap_pv_reclaim()
2835 else if (pmap != locked_pmap && !PMAP_TRYLOCK(pmap)) { in pmap_pv_reclaim()
2836 pmap = NULL; in pmap_pv_reclaim()
2852 pte1p = pmap_pte1(pmap, va); in pmap_pv_reclaim()
2855 pte2p = pmap_pte2(pmap, va); in pmap_pv_reclaim()
2864 pmap, va)); in pmap_pv_reclaim()
2865 pmap_tlb_flush(pmap, va); in pmap_pv_reclaim()
2881 pmap_unuse_pt2(pmap, va, &free); in pmap_pv_reclaim()
2890 pmap->pm_stats.resident_count -= freed; in pmap_pv_reclaim()
2894 TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list); in pmap_pv_reclaim()
2897 TAILQ_INSERT_HEAD(&pmap->pm_pvchunk, pc, in pmap_pv_reclaim()
2905 if (pmap == locked_pmap) in pmap_pv_reclaim()
2922 if (pmap != NULL) { in pmap_pv_reclaim()
2923 if (pmap != locked_pmap) in pmap_pv_reclaim()
2924 PMAP_UNLOCK(pmap); in pmap_pv_reclaim()
2958 free_pv_entry(pmap_t pmap, pv_entry_t pv) in free_pv_entry() argument
2964 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in free_pv_entry()
2979 if (__predict_false(TAILQ_FIRST(&pmap->pm_pvchunk) != in free_pv_entry()
2981 TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list); in free_pv_entry()
2982 TAILQ_INSERT_HEAD(&pmap->pm_pvchunk, pc, in free_pv_entry()
2987 TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list); in free_pv_entry()
2996 get_pv_entry(pmap_t pmap, bool try) in get_pv_entry() argument
3006 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in get_pv_entry()
3015 pc = TAILQ_FIRST(&pmap->pm_pvchunk); in get_pv_entry()
3032 TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list); in get_pv_entry()
3033 TAILQ_INSERT_TAIL(&pmap->pm_pvchunk, pc, pc_list); in get_pv_entry()
3050 m = pmap_pv_reclaim(pmap); in get_pv_entry()
3058 pc->pc_pmap = pmap; in get_pv_entry()
3064 TAILQ_INSERT_HEAD(&pmap->pm_pvchunk, pc, pc_list); in get_pv_entry()
3074 pmap_insert_entry(pmap_t pmap, vm_offset_t va, vm_page_t m) in pmap_insert_entry() argument
3079 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_insert_entry()
3080 pv = get_pv_entry(pmap, false); in pmap_insert_entry()
3086 pmap_pvh_remove(struct md_page *pvh, pmap_t pmap, vm_offset_t va) in pmap_pvh_remove() argument
3092 if (pmap == PV_PMAP(pv) && va == pv->pv_va) { in pmap_pvh_remove()
3101 pmap_pvh_free(struct md_page *pvh, pmap_t pmap, vm_offset_t va) in pmap_pvh_free() argument
3105 pv = pmap_pvh_remove(pvh, pmap, va); in pmap_pvh_free()
3107 free_pv_entry(pmap, pv); in pmap_pvh_free()
3111 pmap_remove_entry(pmap_t pmap, vm_page_t m, vm_offset_t va) in pmap_remove_entry() argument
3116 pmap_pvh_free(&m->md, pmap, va); in pmap_remove_entry()
3125 pmap_pv_demote_pte1(pmap_t pmap, vm_offset_t va, vm_paddr_t pa) in pmap_pv_demote_pte1() argument
3142 pv = pmap_pvh_remove(pvh, pmap, va); in pmap_pv_demote_pte1()
3153 pmap_insert_entry(pmap, va, m); in pmap_pv_demote_pte1()
3159 pmap_pv_promote_pte1(pmap_t pmap, vm_offset_t va, vm_paddr_t pa) in pmap_pv_promote_pte1() argument
3179 pv = pmap_pvh_remove(&m->md, pmap, va); in pmap_pv_promote_pte1()
3188 pmap_pvh_free(&m->md, pmap, va); in pmap_pv_promote_pte1()
3197 pmap_try_insert_pv_entry(pmap_t pmap, vm_offset_t va, vm_page_t m) in pmap_try_insert_pv_entry() argument
3202 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_try_insert_pv_entry()
3204 (pv = get_pv_entry(pmap, true)) != NULL) { in pmap_try_insert_pv_entry()
3216 pmap_pv_insert_pte1(pmap_t pmap, vm_offset_t va, pt1_entry_t pte1, u_int flags) in pmap_pv_insert_pte1() argument
3225 (pv = get_pv_entry(pmap, noreclaim)) == NULL) in pmap_pv_insert_pte1()
3234 pmap_tlb_flush_pte1(pmap_t pmap, vm_offset_t va, pt1_entry_t npte1) in pmap_tlb_flush_pte1() argument
3239 pmap_tlb_flush_range(pmap, pte1_trunc(va), PTE1_SIZE); in pmap_tlb_flush_pte1()
3241 pmap_tlb_flush(pmap, pte1_trunc(va)); in pmap_tlb_flush_pte1()
3260 pmap_t pmap; in pmap_update_pte1_kernel() local
3267 pmap = PCPU_GET(curpmap); in pmap_update_pte1_kernel()
3268 if (pmap == NULL) in pmap_update_pte1_kernel()
3269 pmap = kernel_pmap; in pmap_update_pte1_kernel()
3278 pte1p = pmap_pte1(pmap, va); in pmap_update_pte1_kernel()
3295 LIST_FOREACH(pmap, &allpmaps, pm_list) { in pmap_update_pte1_kernel()
3296 pte1p = pmap_pte1(pmap, va); in pmap_update_pte1_kernel()
3341 pmap_change_pte1(pmap_t pmap, pt1_entry_t *pte1p, vm_offset_t va, in pmap_change_pte1() argument
3345 if (pmap == kernel_pmap) { in pmap_change_pte1()
3368 pmap_tlb_flush_pte1(pmap, va, npte1); in pmap_change_pte1()
3375 pmap_change_pte1(pmap_t pmap, pt1_entry_t *pte1p, vm_offset_t va, in pmap_change_pte1() argument
3379 if (pmap == kernel_pmap) { in pmap_change_pte1()
3393 pmap_tlb_flush_pte1(pmap, va, npte1); in pmap_change_pte1()
3414 pmap_promote_pte1(pmap_t pmap, pt1_entry_t *pte1p, vm_offset_t va) in pmap_promote_pte1() argument
3423 pmap, va, pte1_load(pte1p), pte1p)); in pmap_promote_pte1()
3425 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_promote_pte1()
3432 fpte2p = pmap_pte2_quick(pmap, pte1_trunc(va)); in pmap_promote_pte1()
3438 __func__, va, pmap); in pmap_promote_pte1()
3441 if (pte2_is_managed(fpte2) && pmap == kernel_pmap) { in pmap_promote_pte1()
3444 __func__, va, pmap); in pmap_promote_pte1()
3468 __func__, va, pmap); in pmap_promote_pte1()
3481 __func__, pteva, pmap); in pmap_promote_pte1()
3486 __func__, va, pmap); in pmap_promote_pte1()
3514 pmap_pv_promote_pte1(pmap, va, pte1_pa(npte1)); in pmap_promote_pte1()
3519 pmap_change_pte1(pmap, pte1p, va, npte1); in pmap_promote_pte1()
3523 __func__, va, pmap); in pmap_promote_pte1()
3526 __func__, pmap, va, npte1, pte1_load(pte1p), pte1p)); in pmap_promote_pte1()
3547 pmap_remove_kernel_pte1(pmap_t pmap, pt1_entry_t *pte1p, vm_offset_t va) in pmap_remove_kernel_pte1() argument
3554 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_remove_kernel_pte1()
3555 m = pmap_pt2_page(pmap, va); in pmap_remove_kernel_pte1()
3589 pmap_remove_pte1(pmap_t pmap, pt1_entry_t *pte1p, vm_offset_t sva, in pmap_remove_pte1() argument
3597 PDEBUG(6, printf("%s(%p): va %#x pte1 %#x at %p\n", __func__, pmap, sva, in pmap_remove_pte1()
3600 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_remove_pte1()
3610 pmap_tlb_flush(pmap, sva); in pmap_remove_pte1()
3613 pmap->pm_stats.wired_count -= PTE1_SIZE / PAGE_SIZE; in pmap_remove_pte1()
3614 pmap->pm_stats.resident_count -= PTE1_SIZE / PAGE_SIZE; in pmap_remove_pte1()
3617 pmap_pvh_free(pvh, pmap, sva); in pmap_remove_pte1()
3630 if (pmap == kernel_pmap) { in pmap_remove_pte1()
3635 pmap_remove_kernel_pte1(pmap, pte1p, sva); in pmap_remove_pte1()
3641 m = pmap_pt2_page(pmap, sva); in pmap_remove_pte1()
3643 pmap_unwire_pt2_all(pmap, sva, m, free); in pmap_remove_pte1()
3666 pmap_demote_pte1(pmap_t pmap, pt1_entry_t *pte1p, vm_offset_t va) in pmap_demote_pte1() argument
3676 pmap, va, pte1_load(pte1p), pte1p)); in pmap_demote_pte1()
3678 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_demote_pte1()
3683 if ((opte1 & PTE1_A) == 0 || (m = pmap_pt2_page(pmap, va)) == NULL) { in pmap_demote_pte1()
3695 pmap_remove_pte1(pmap, pte1p, pte1_trunc(va), &free); in pmap_demote_pte1()
3698 __func__, va, pmap); in pmap_demote_pte1()
3703 pmap->pm_stats.resident_count++; in pmap_demote_pte1()
3712 pt2pg_pa = pmap_pt2pg_init(pmap, va, m); in pmap_demote_pte1()
3736 if (pmap_is_current(pmap)) in pmap_demote_pte1()
3802 pmap_change_pte1(pmap, pte1p, va, npte1); in pmap_demote_pte1()
3814 pmap_pv_demote_pte1(pmap, va, pte1_pa(opte1)); in pmap_demote_pte1()
3818 __func__, va, pmap); in pmap_demote_pte1()
3821 __func__, pmap, va, npte1, pte1_load(pte1p), pte1p)); in pmap_demote_pte1()
3838 pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, in pmap_enter() argument
3874 if (pmap != kernel_pmap) in pmap_enter()
3878 PMAP_LOCK(pmap); in pmap_enter()
3885 rv = pmap_enter_pte1(pmap, va, PTE1_PA(pa) | ATTR_TO_L1(npte2) | in pmap_enter()
3895 mpte2 = pmap_allocpte2(pmap, va, flags); in pmap_enter()
3904 pte1p = pmap_pte1(pmap, va); in pmap_enter()
3907 pte2p = pmap_pte2_quick(pmap, va); in pmap_enter()
3925 pmap->pm_stats.wired_count++; in pmap_enter()
3927 pmap->pm_stats.wired_count--; in pmap_enter()
3948 __func__, pmap, va, opte2, opa, pa, flags, prot)); in pmap_enter()
3958 pmap->pm_stats.wired_count--; in pmap_enter()
3963 pv = pmap_pvh_remove(&om->md, pmap, va); in pmap_enter()
3971 pmap->pm_stats.resident_count++; in pmap_enter()
3978 pv = get_pv_entry(pmap, false); in pmap_enter()
3983 free_pv_entry(pmap, pv); in pmap_enter()
3989 pmap->pm_stats.wired_count++; in pmap_enter()
4023 if ((prot & VM_PROT_EXECUTE) && pmap != kernel_pmap && in pmap_enter()
4031 pmap_tlb_flush(pmap, va); in pmap_enter()
4056 panic("%s: pmap %p va %#x opte2 %x npte2 %x !!", __func__, pmap, in pmap_enter()
4069 pmap_promote_pte1(pmap, pte1p, va); in pmap_enter()
4076 PMAP_UNLOCK(pmap); in pmap_enter()
4084 pmap_remove_pte2(pmap_t pmap, pt2_entry_t *pte2p, vm_offset_t va, in pmap_remove_pte2() argument
4091 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_remove_pte2()
4095 pmap_tlb_flush(pmap, va); in pmap_remove_pte2()
4098 __func__, pmap, va, opte2)); in pmap_remove_pte2()
4101 pmap->pm_stats.wired_count -= 1; in pmap_remove_pte2()
4102 pmap->pm_stats.resident_count -= 1; in pmap_remove_pte2()
4109 pmap_remove_entry(pmap, m, va); in pmap_remove_pte2()
4111 return (pmap_unuse_pt2(pmap, va, free)); in pmap_remove_pte2()
4118 pmap_remove_page(pmap_t pmap, vm_offset_t va, struct spglist *free) in pmap_remove_page() argument
4125 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_remove_page()
4126 if ((pte2p = pmap_pte2_quick(pmap, va)) == NULL || in pmap_remove_page()
4129 pmap_remove_pte2(pmap, pte2p, va, free); in pmap_remove_page()
4139 pmap_remove(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) in pmap_remove() argument
4149 if (pmap->pm_stats.resident_count == 0) in pmap_remove()
4156 PMAP_LOCK(pmap); in pmap_remove()
4163 pte1 = pte1_load(pmap_pte1(pmap, sva)); in pmap_remove()
4165 pmap_remove_page(pmap, sva, &free); in pmap_remove()
4177 if (pmap->pm_stats.resident_count == 0) in pmap_remove()
4180 pte1p = pmap_pte1(pmap, sva); in pmap_remove()
4196 pmap_remove_pte1(pmap, pte1p, sva, &free); in pmap_remove()
4198 } else if (!pmap_demote_pte1(pmap, pte1p, sva)) { in pmap_remove()
4211 " is not link", __func__, pmap, sva, pte1, pte1p)); in pmap_remove()
4221 for (pte2p = pmap_pte2_quick(pmap, sva); sva != nextva; in pmap_remove()
4226 if (pmap_remove_pte2(pmap, pte2p, sva, &free)) in pmap_remove()
4233 PMAP_UNLOCK(pmap); in pmap_remove()
4255 pmap_t pmap; in pmap_remove_all() local
4271 pmap = PV_PMAP(pv); in pmap_remove_all()
4272 PMAP_LOCK(pmap); in pmap_remove_all()
4273 pte1p = pmap_pte1(pmap, va); in pmap_remove_all()
4274 (void)pmap_demote_pte1(pmap, pte1p, va); in pmap_remove_all()
4275 PMAP_UNLOCK(pmap); in pmap_remove_all()
4279 pmap = PV_PMAP(pv); in pmap_remove_all()
4280 PMAP_LOCK(pmap); in pmap_remove_all()
4281 pmap->pm_stats.resident_count--; in pmap_remove_all()
4282 pte1p = pmap_pte1(pmap, pv->pv_va); in pmap_remove_all()
4285 pte2p = pmap_pte2_quick(pmap, pv->pv_va); in pmap_remove_all()
4287 pmap_tlb_flush(pmap, pv->pv_va); in pmap_remove_all()
4289 __func__, pmap, pv->pv_va)); in pmap_remove_all()
4291 pmap->pm_stats.wired_count--; in pmap_remove_all()
4300 pmap_unuse_pt2(pmap, pv->pv_va, &free); in pmap_remove_all()
4302 free_pv_entry(pmap, pv); in pmap_remove_all()
4303 PMAP_UNLOCK(pmap); in pmap_remove_all()
4316 pmap_remove_pte1_quick(pmap_t pmap, pt1_entry_t pte1, pv_entry_t pv, in pmap_remove_pte1_quick() argument
4337 pmap->pm_stats.resident_count -= PTE1_SIZE / PAGE_SIZE; in pmap_remove_pte1_quick()
4345 mpt2pg = pmap_pt2_page(pmap, pv->pv_va); in pmap_remove_pte1_quick()
4347 pmap_unwire_pt2_all(pmap, pv->pv_va, mpt2pg, free); in pmap_remove_pte1_quick()
4355 pmap_remove_pte2_quick(pmap_t pmap, pt2_entry_t pte2, pv_entry_t pv, in pmap_remove_pte2_quick() argument
4374 pmap->pm_stats.resident_count--; in pmap_remove_pte2_quick()
4381 pmap_unuse_pt2(pmap, pv->pv_va, free); in pmap_remove_pte2_quick()
4392 pmap_remove_pages(pmap_t pmap) in pmap_remove_pages() argument
4409 KASSERT(pmap == vmspace_pmap(curthread->td_proc->p_vmspace), in pmap_remove_pages()
4410 ("%s: non-current pmap %p", __func__, pmap)); in pmap_remove_pages()
4416 other_cpus = pmap->pm_active; in pmap_remove_pages()
4420 ("%s: pmap %p active on other cpus", __func__, pmap)); in pmap_remove_pages()
4425 PMAP_LOCK(pmap); in pmap_remove_pages()
4427 TAILQ_FOREACH_SAFE(pc, &pmap->pm_pvchunk, pc_list, npc) { in pmap_remove_pages()
4428 KASSERT(pc->pc_pmap == pmap, ("%s: wrong pmap %p %p", in pmap_remove_pages()
4429 __func__, pmap, pc->pc_pmap)); in pmap_remove_pages()
4444 pte1p = pmap_pte1(pmap, pv->pv_va); in pmap_remove_pages()
4452 pmap_remove_pte1_quick(pmap, pte1, pv, in pmap_remove_pages()
4462 pmap, pv->pv_va, pte2); in pmap_remove_pages()
4471 pmap_remove_pte2_quick(pmap, pte2, pv, in pmap_remove_pages()
4475 __func__, pmap, pv->pv_va, pte1); in pmap_remove_pages()
4487 TAILQ_REMOVE(&pmap->pm_pvchunk, pc, pc_list); in pmap_remove_pages()
4494 PMAP_UNLOCK(pmap); in pmap_remove_pages()
4507 pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, in pmap_enter_quick_locked() argument
4519 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_enter_quick_locked()
4534 pte1p = pmap_pte1(pmap, va); in pmap_enter_quick_locked()
4566 mpt2pg = _pmap_allocpte2(pmap, va, in pmap_enter_quick_locked()
4599 !pmap_try_insert_pv_entry(pmap, va, m)) { in pmap_enter_quick_locked()
4602 if (pmap_unwire_pt2(pmap, va, mpt2pg, &free)) { in pmap_enter_quick_locked()
4603 pmap_tlb_flush(pmap, va); in pmap_enter_quick_locked()
4615 pmap->pm_stats.resident_count++; in pmap_enter_quick_locked()
4626 else if (m->md.pat_mode == VM_MEMATTR_WB_WA && pmap != kernel_pmap) { in pmap_enter_quick_locked()
4639 pmap_enter_quick(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) in pmap_enter_quick() argument
4643 PMAP_LOCK(pmap); in pmap_enter_quick()
4644 (void)pmap_enter_quick_locked(pmap, va, m, prot, NULL); in pmap_enter_quick()
4646 PMAP_UNLOCK(pmap); in pmap_enter_quick()
4656 pmap_enter_1mpage(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot) in pmap_enter_1mpage() argument
4661 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_enter_1mpage()
4668 if (pmap != kernel_pmap) in pmap_enter_1mpage()
4670 return (pmap_enter_pte1(pmap, va, pte1, PMAP_ENTER_NOSLEEP | in pmap_enter_1mpage()
4683 pmap_enter_pte1(pmap_t pmap, vm_offset_t va, pt1_entry_t pte1, u_int flags, in pmap_enter_pte1() argument
4696 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_enter_pte1()
4697 pte1p = pmap_pte1(pmap, va); in pmap_enter_pte1()
4702 __func__, va, pmap); in pmap_enter_pte1()
4712 pmap_remove_pte1(pmap, pte1p, va, &free); in pmap_enter_pte1()
4716 for (cur = va, pte2p = pmap_pte2_quick(pmap, va); in pmap_enter_pte1()
4721 if (pmap_remove_pte2(pmap, pte2p, cur, &free)) in pmap_enter_pte1()
4732 if (!pmap_pv_insert_pte1(pmap, va, pte1, flags)) { in pmap_enter_pte1()
4734 __func__, va, pmap); in pmap_enter_pte1()
4747 pmap->pm_stats.wired_count += PTE1_SIZE / PAGE_SIZE; in pmap_enter_pte1()
4748 pmap->pm_stats.resident_count += PTE1_SIZE / PAGE_SIZE; in pmap_enter_pte1()
4755 pmap != kernel_pmap && (!pte1_is_section(opte1) || in pmap_enter_pte1()
4766 pmap); in pmap_enter_pte1()
4783 pmap_enter_object(pmap_t pmap, vm_offset_t start, vm_offset_t end, in pmap_enter_object() argument
4791 __func__, pmap, start, end, m_start, prot)); in pmap_enter_object()
4798 PMAP_LOCK(pmap); in pmap_enter_object()
4803 pmap_enter_1mpage(pmap, va, m, prot)) in pmap_enter_object()
4806 mpt2pg = pmap_enter_quick_locked(pmap, va, m, prot, in pmap_enter_object()
4811 PMAP_UNLOCK(pmap); in pmap_enter_object()
4820 pmap_object_init_pt(pmap_t pmap, vm_offset_t addr, vm_object_t object, in pmap_object_init_pt() argument
4873 PMAP_LOCK(pmap); in pmap_object_init_pt()
4875 pte1p = pmap_pte1(pmap, addr); in pmap_object_init_pt()
4878 pmap->pm_stats.resident_count += PTE1_SIZE / in pmap_object_init_pt()
4885 PMAP_UNLOCK(pmap); in pmap_object_init_pt()
4893 pmap_protect_pte1(pmap_t pmap, pt1_entry_t *pte1p, vm_offset_t sva, in pmap_protect_pte1() argument
4900 PMAP_LOCK_ASSERT(pmap, MA_OWNED); in pmap_protect_pte1()
4924 pmap_tlb_flush(pmap, sva); in pmap_protect_pte1()
4933 pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot) in pmap_protect() argument
4942 pmap_remove(pmap, sva, eva); in pmap_protect()
4950 if (pmap_is_current(pmap)) in pmap_protect()
4959 PMAP_LOCK(pmap); in pmap_protect()
4968 pte1p = pmap_pte1(pmap, sva); in pmap_protect()
4984 pmap_protect_pte1(pmap, pte1p, sva, prot); in pmap_protect()
4990 PMAP_UNLOCK(pmap); in pmap_protect()
4995 if (!pmap_demote_pte1(pmap, pte1p, sva)) { in pmap_protect()
5012 " is not link", __func__, pmap, sva, pte1, pte1p)); in pmap_protect()
5022 for (pte2p = pmap_pte2_quick(pmap, sva); sva != nextva; pte2p++, in pmap_protect()
5050 pmap_tlb_flush(pmap, sva); in pmap_protect()
5058 PMAP_UNLOCK(pmap); in pmap_protect()
5069 pmap_t pmap; in pmap_pvh_wired_mappings() local
5077 pmap = PV_PMAP(pv); in pmap_pvh_wired_mappings()
5078 PMAP_LOCK(pmap); in pmap_pvh_wired_mappings()
5079 pte1 = pte1_load(pmap_pte1(pmap, pv->pv_va)); in pmap_pvh_wired_mappings()
5086 pte2 = pte2_load(pmap_pte2_quick(pmap, pv->pv_va)); in pmap_pvh_wired_mappings()
5090 PMAP_UNLOCK(pmap); in pmap_pvh_wired_mappings()
5131 pmap_t pmap; in pmap_is_modified_pvh() local
5138 pmap = PV_PMAP(pv); in pmap_is_modified_pvh()
5139 PMAP_LOCK(pmap); in pmap_is_modified_pvh()
5140 pte1 = pte1_load(pmap_pte1(pmap, pv->pv_va)); in pmap_is_modified_pvh()
5146 pte2 = pte2_load(pmap_pte2_quick(pmap, pv->pv_va)); in pmap_is_modified_pvh()
5149 PMAP_UNLOCK(pmap); in pmap_is_modified_pvh()
5191 pmap_is_prefaultable(pmap_t pmap, vm_offset_t addr) in pmap_is_prefaultable() argument
5198 PMAP_LOCK(pmap); in pmap_is_prefaultable()
5199 pte1 = pte1_load(pmap_pte1(pmap, addr)); in pmap_is_prefaultable()
5204 PMAP_UNLOCK(pmap); in pmap_is_prefaultable()
5219 pmap_t pmap; in pmap_is_referenced_pvh() local
5226 pmap = PV_PMAP(pv); in pmap_is_referenced_pvh()
5227 PMAP_LOCK(pmap); in pmap_is_referenced_pvh()
5228 pte1 = pte1_load(pmap_pte1(pmap, pv->pv_va)); in pmap_is_referenced_pvh()
5232 pte2 = pte2_load(pmap_pte2_quick(pmap, pv->pv_va)); in pmap_is_referenced_pvh()
5235 PMAP_UNLOCK(pmap); in pmap_is_referenced_pvh()
5285 pmap_t pmap; in pmap_ts_referenced() local
5302 pmap = PV_PMAP(pv); in pmap_ts_referenced()
5303 PMAP_LOCK(pmap); in pmap_ts_referenced()
5304 pte1p = pmap_pte1(pmap, pv->pv_va); in pmap_ts_referenced()
5334 (uintptr_t)pmap) & (NPTE2_IN_PG - 1)) == 0 && in pmap_ts_referenced()
5337 pmap_tlb_flush(pmap, pv->pv_va); in pmap_ts_referenced()
5341 PMAP_UNLOCK(pmap); in pmap_ts_referenced()
5355 pmap = PV_PMAP(pv); in pmap_ts_referenced()
5356 PMAP_LOCK(pmap); in pmap_ts_referenced()
5357 pte1p = pmap_pte1(pmap, pv->pv_va); in pmap_ts_referenced()
5361 pte2p = pmap_pte2_quick(pmap, pv->pv_va); in pmap_ts_referenced()
5367 pmap_tlb_flush(pmap, pv->pv_va); in pmap_ts_referenced()
5370 PMAP_UNLOCK(pmap); in pmap_ts_referenced()
5394 pmap_unwire(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) in pmap_unwire() argument
5401 if (pmap_is_current(pmap)) in pmap_unwire()
5409 PMAP_LOCK(pmap); in pmap_unwire()
5415 pte1p = pmap_pte1(pmap, sva); in pmap_unwire()
5435 pmap->pm_stats.wired_count -= PTE1_SIZE / in pmap_unwire()
5442 PMAP_UNLOCK(pmap); in pmap_unwire()
5448 if (!pmap_demote_pte1(pmap, pte1p, sva)) in pmap_unwire()
5460 " is not link", __func__, pmap, sva, pte1, pte1p)); in pmap_unwire()
5470 for (pte2p = pmap_pte2_quick(pmap, sva); sva != nextva; pte2p++, in pmap_unwire()
5485 pmap->pm_stats.wired_count--; in pmap_unwire()
5492 PMAP_UNLOCK(pmap); in pmap_unwire()
5503 pmap_t pmap; in pmap_remove_write() local
5521 pmap = PV_PMAP(pv); in pmap_remove_write()
5522 PMAP_LOCK(pmap); in pmap_remove_write()
5523 pte1p = pmap_pte1(pmap, va); in pmap_remove_write()
5525 (void)pmap_demote_pte1(pmap, pte1p, va); in pmap_remove_write()
5526 PMAP_UNLOCK(pmap); in pmap_remove_write()
5530 pmap = PV_PMAP(pv); in pmap_remove_write()
5531 PMAP_LOCK(pmap); in pmap_remove_write()
5532 pte1p = pmap_pte1(pmap, pv->pv_va); in pmap_remove_write()
5535 pte2p = pmap_pte2_quick(pmap, pv->pv_va); in pmap_remove_write()
5541 pmap_tlb_flush(pmap, pv->pv_va); in pmap_remove_write()
5543 PMAP_UNLOCK(pmap); in pmap_remove_write()
5556 pmap_advise(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, int advice) in pmap_advise() argument
5566 if (pmap_is_current(pmap)) in pmap_advise()
5574 PMAP_LOCK(pmap); in pmap_advise()
5579 pte1p = pmap_pte1(pmap, sva); in pmap_advise()
5589 PMAP_UNLOCK(pmap); in pmap_advise()
5594 if (!pmap_demote_pte1(pmap, pte1p, sva)) { in pmap_advise()
5609 pte2p = pmap_pte2_quick(pmap, sva); in pmap_advise()
5612 pmap_remove_pte2(pmap, pte2p, sva, NULL); in pmap_advise()
5617 for (pte2p = pmap_pte2_quick(pmap, sva); sva != pdnxt; pte2p++, in pmap_advise()
5638 pmap_tlb_flush(pmap, sva); in pmap_advise()
5645 PMAP_UNLOCK(pmap); in pmap_advise()
5656 pmap_t pmap; in pmap_clear_modify() local
5674 pmap = PV_PMAP(pv); in pmap_clear_modify()
5675 PMAP_LOCK(pmap); in pmap_clear_modify()
5676 pte1p = pmap_pte1(pmap, va); in pmap_clear_modify()
5679 if (pmap_demote_pte1(pmap, pte1p, va) && in pmap_clear_modify()
5687 pte2p = pmap_pte2_quick(pmap, va); in pmap_clear_modify()
5692 pmap_tlb_flush(pmap, va); in pmap_clear_modify()
5696 PMAP_UNLOCK(pmap); in pmap_clear_modify()
5700 pmap = PV_PMAP(pv); in pmap_clear_modify()
5701 PMAP_LOCK(pmap); in pmap_clear_modify()
5702 pte1p = pmap_pte1(pmap, pv->pv_va); in pmap_clear_modify()
5705 pte2p = pmap_pte2_quick(pmap, pv->pv_va); in pmap_clear_modify()
5708 pmap_tlb_flush(pmap, pv->pv_va); in pmap_clear_modify()
5710 PMAP_UNLOCK(pmap); in pmap_clear_modify()
5798 pmap_page_exists_quick(pmap_t pmap, vm_page_t m) in pmap_page_exists_quick() argument
5810 if (PV_PMAP(pv) == pmap) { in pmap_page_exists_quick()
5821 if (PV_PMAP(pv) == pmap) { in pmap_page_exists_quick()
6166 pmap_t pmap, oldpmap; in pmap_activate() local
6172 pmap = vmspace_pmap(td->td_proc->p_vmspace); in pmap_activate()
6178 CPU_SET_ATOMIC(cpuid, &pmap->pm_active); in pmap_activate()
6181 CPU_SET(cpuid, &pmap->pm_active); in pmap_activate()
6184 ttb = pmap_ttb_get(pmap); in pmap_activate()
6191 PCPU_SET(curpmap, pmap); in pmap_activate()
6196 pmap_active_cpus(pmap_t pmap, cpuset_t *res) in pmap_active_cpus() argument
6198 *res = pmap->pm_active; in pmap_active_cpus()
6207 pmap_mincore(pmap_t pmap, vm_offset_t addr, vm_paddr_t *pap) in pmap_mincore() argument
6215 PMAP_LOCK(pmap); in pmap_mincore()
6216 pte1p = pmap_pte1(pmap, addr); in pmap_mincore()
6227 pte2p = pmap_pte2(pmap, addr); in pmap_mincore()
6245 PMAP_UNLOCK(pmap); in pmap_mincore()
6287 pmap_set_pcb_pagedir(pmap_t pmap, struct pcb *pcb) in pmap_set_pcb_pagedir() argument
6290 pcb->pcb_pagedir = pmap_ttb_get(pmap); in pmap_set_pcb_pagedir()
6346 pmap_sync_icache(pmap_t pmap, vm_offset_t va, vm_size_t size) in pmap_sync_icache() argument
6359 pa = pmap_extract(pmap, va); /* offset is preserved */ in pmap_sync_icache()
6388 pmap_fault(pmap_t pmap, vm_offset_t far, uint32_t fsr, int idx, bool usermode) in pmap_fault() argument
6393 if (pmap == NULL) in pmap_fault()
6394 pmap = kernel_pmap; in pmap_fault()
6402 if (__predict_false(IN_RANGE2(far, pmap->pm_pt1, NB_IN_PT1))) { in pmap_fault()
6411 __func__, pmap, pmap->pm_pt1, far); in pmap_fault()
6427 __func__, pmap, PT2MAP, far); in pmap_fault()
6454 PMAP_LOCK(pmap); in pmap_fault()
6456 pte1 = pte1_load(pmap_pte1(pmap, far)); in pmap_fault()
6465 pte2 = pt2tab_load(pmap_pt2tab_entry(pmap, far)); in pmap_fault()
6468 __func__, pmap, far); in pmap_fault()
6479 PMAP_UNLOCK(pmap); in pmap_fault()
6491 pte1 = pte1_load(pmap_pte1(pmap, far)); in pmap_fault()
6498 PMAP_UNLOCK(pmap); in pmap_fault()
6507 __func__, pmap, far); in pmap_fault()
6508 PMAP_UNLOCK(pmap); in pmap_fault()
6513 pte1p = pmap_pte1(pmap, far); in pmap_fault()
6517 PMAP_UNLOCK(pmap); in pmap_fault()
6525 __func__, pmap, far); in pmap_fault()
6526 PMAP_UNLOCK(pmap); in pmap_fault()
6540 pte1 = pte1_load(pmap_pte1(pmap, far)); in pmap_fault()
6549 PMAP_UNLOCK(pmap); in pmap_fault()
6558 __func__, pmap, far); in pmap_fault()
6559 PMAP_UNLOCK(pmap); in pmap_fault()
6564 pte1p = pmap_pte1(pmap, far); in pmap_fault()
6570 PMAP_UNLOCK(pmap); in pmap_fault()
6579 __func__, pmap, far); in pmap_fault()
6580 PMAP_UNLOCK(pmap); in pmap_fault()
6590 PMAP_UNLOCK(pmap); in pmap_fault()
6627 pmap_t pmap; in pmap_pid_dump() local
6637 pmap = vmspace_pmap(p->p_vmspace); in pmap_pid_dump()
6646 pte1 = pte1_load(&pmap->pm_pt1[i]); in pmap_pid_dump()
6663 pte2p = pmap_pte2(pmap, va); in pmap_pid_dump()
6694 pmap_pte2_ddb(pmap_t pmap, vm_offset_t va) in pmap_pte2_ddb() argument
6699 pte1 = pte1_load(pmap_pte1(pmap, va)); in pmap_pte2_ddb()
6703 if (pmap_is_current(pmap)) in pmap_pte2_ddb()
6725 dump_pmap(pmap_t pmap) in dump_pmap() argument
6728 printf("pmap %p\n", pmap); in dump_pmap()
6729 printf(" pm_pt1: %p\n", pmap->pm_pt1); in dump_pmap()
6730 printf(" pm_pt2tab: %p\n", pmap->pm_pt2tab); in dump_pmap()
6731 printf(" pm_active: 0x%08lX\n", pmap->pm_active.__bits[0]); in dump_pmap()
6737 pmap_t pmap; in DB_SHOW_COMMAND() local
6738 LIST_FOREACH(pmap, &allpmaps, pm_list) { in DB_SHOW_COMMAND()
6739 dump_pmap(pmap); in DB_SHOW_COMMAND()
6754 dump_section(pmap_t pmap, uint32_t pte1_idx) in dump_section() argument
6759 dump_link(pmap_t pmap, uint32_t pte1_idx, bool invalid_ok) in dump_link() argument
6767 pte2p = pmap_pte2_ddb(pmap, va); in dump_link()
6801 DB_SHOW_COMMAND(pmap, pmap_pmap_print) in DB_SHOW_COMMAND() argument
6804 pmap_t pmap = (pmap_t)addr; in DB_SHOW_COMMAND() local
6816 if (pm == pmap) break; in DB_SHOW_COMMAND()
6818 printf("given pmap %p is not in allpmaps list\n", pmap); in DB_SHOW_COMMAND()
6822 pmap = PCPU_GET(curpmap); in DB_SHOW_COMMAND()
6827 printf("pmap: 0x%08X\n", (uint32_t)pmap); in DB_SHOW_COMMAND()
6829 printf("pt2tab: 0x%08X\n", (uint32_t)pmap->pm_pt2tab); in DB_SHOW_COMMAND()
6832 pte1 = pte1_load(&pmap->pm_pt1[i]); in DB_SHOW_COMMAND()
6842 dump_section(pmap, i); in DB_SHOW_COMMAND()
6846 pte2 = pte2_load(pmap_pt2tab_entry(pmap, va)); in DB_SHOW_COMMAND()
6867 dump_link(pmap, i, invalid_ok); in DB_SHOW_COMMAND()
6874 dump_pt2tab(pmap_t pmap) in dump_pt2tab() argument
6884 pte2 = pte2_load(&pmap->pm_pt2tab[i]); in dump_pt2tab()
6902 pmap_t pmap = (pmap_t)addr; in DB_SHOW_COMMAND() local
6913 pmap = PCPU_GET(curpmap); in DB_SHOW_COMMAND()
6914 printf("curpmap: 0x%08X\n", (uint32_t)pmap); in DB_SHOW_COMMAND()
6916 printf("pt2tab: 0x%08X\n", (uint32_t)pmap->pm_pt2tab); in DB_SHOW_COMMAND()
6920 pte1 = pte1_load(&pmap->pm_pt1[i]); in DB_SHOW_COMMAND()
6927 dump_section(pmap, i); in DB_SHOW_COMMAND()
6929 pte2 = pte2_load(pmap_pt2tab_entry(pmap, va)); in DB_SHOW_COMMAND()
6937 dump_pt2tab(pmap); in DB_SHOW_COMMAND()