/illumos-gate/usr/src/uts/i86pc/vm/ |
H A D | hat_pte.h | 104 (pa_to_ma(pfn_to_pa(pfn)) | mmu.ptp_bits[(l) + 1]) 107 ((pfn_to_pa(pfn & ~PFN_IS_FOREIGN_MFN) | mmu.pte_bits[l]) | \ 109 (pa_to_ma(pfn_to_pa(pfn)) | mmu.pte_bits[l])) 112 (pfn_to_pa(pfn) | mmu.ptp_bits[(l) + 1]) 114 (pfn_to_pa(pfn) | mmu.pte_bits[l]) 144 #define LEVEL_SHIFT(l) (mmu.level_shift[l]) 145 #define LEVEL_SIZE(l) (mmu.level_size[l]) 146 #define LEVEL_OFFSET(l) (mmu.level_offset[l]) 147 #define LEVEL_MASK(l) (mmu.level_mask[l]) 237 #define PWIN_VA(x) (mmu.pwin_base + ((x) << MMU_PAGESHIFT)) [all …]
|
H A D | i86_mmu.c | 128 window_size = mmu_btop(map_len) * mmu.pte_size; in hat_kmap_init() 137 mmu.kmap_htables = in hat_kmap_init() 149 mmu.kmap_htables[i] = ht; in hat_kmap_init() 164 mmu.kmap_addr = map_addr; in hat_kmap_init() 165 mmu.kmap_eaddr = map_eaddr; in hat_kmap_init() 166 mmu.kmap_ptes = (x86pte_t *)ptes; in hat_kmap_init() 242 level_t lpagel = mmu.max_page_level; in hat_kern_alloc() 292 nwindows = MAX(nwindows, mmu.max_level); in hat_kern_alloc() 300 mmu.pwin_base = vmem_xalloc(heap_arena, nwindows * MMU_PAGESIZE, in hat_kern_alloc() 302 ASSERT(nwindows <= MMU_PAGESIZE / mmu.pte_size); in hat_kern_alloc() [all …]
|
H A D | hat_i86.c | 278 struct hat_mmu_info mmu; variable 412 sizeof (pgcnt_t) * (mmu.max_page_level + 1)); in hati_constructor() 488 hat->hat_max_level = mmu.max_level; in hat_alloc() 499 hat->hat_max_level = mmu.max_level32; in hat_alloc() 500 hat->hat_num_copied = mmu.num_copied_ents32; in hat_alloc() 506 hat->hat_max_level = mmu.max_level; in hat_alloc() 507 hat->hat_num_copied = mmu.num_copied_ents; in hat_alloc() 513 hat->hat_max_level = mmu.max_level; in hat_alloc() 533 hat->hat_num_hash = mmu.hat32_hash_cnt; in hat_alloc() 536 hat->hat_num_hash = mmu.hash_cnt; in hat_alloc() [all …]
|
H A D | htable.c | 582 if (htable_steal_passes > mmu.ptes_per_table) in htable_steal() 583 htable_steal_passes = mmu.ptes_per_table; in htable_steal() 606 threshold = pass * mmu.ptes_per_table / htable_steal_passes; in htable_steal() 676 if (ht->ht_level == mmu.max_level) { in htable_steal() 901 if (level == mmu.max_level) { in htable_alloc() 961 x86pte_zero(ht, 0, mmu.ptes_per_table); in htable_alloc() 966 if (level == mmu.max_level) in htable_alloc() 1010 if (ht->ht_level == mmu.max_level && hat != NULL) { in htable_free() 1147 ASSERT(new->ht_level != mmu.max_level); in link_ptp() 1223 if (level >= mmu.max_page_level && in htable_release() [all …]
|
H A D | hat_kdi.c | 88 hat_kdi_use_pae = mmu.pae_hat; in hat_kdi_init() 184 for (level = mmu.max_level; ; --level) { in kdi_vtop() 185 index = (va >> LEVEL_SHIFT(level)) & (mmu.ptes_per_table - 1); in kdi_vtop() 186 *pap += index << mmu.pte_size_shift; in kdi_vtop() 188 if (kdi_pread((caddr_t)&pte, mmu.pte_size, *pap, &len) != 0) in kdi_vtop() 192 if (level > 0 && level <= mmu.max_page_level && in kdi_vtop()
|
H A D | htable.h | 137 (((ht)->ht_level == mmu.max_level) ? 512 : 4) : 512) 140 ((ht)->ht_level == mmu.max_level ? ((uintptr_t)0UL - MMU_PAGESIZE) :\ 145 ((va & LEVEL_MASK(l)) + LEVEL_SIZE(l) == mmu.hole_start ? \ 146 mmu.hole_end : (va & LEVEL_MASK(l)) + LEVEL_SIZE(l)) 151 (!mmu.pae_hat ? 1024 : ((ht)->ht_level == 2 ? 4 : 512))
|
H A D | kboot_mmu.c | 264 probe_va = mmu.hole_end; in kbm_probe() 317 if (PTE_GET(pte_val, mmu.pt_nx)) in kbm_probe()
|
H A D | vm_machdep.c | 488 for (l = mmu.umax_page_level; l > 0; --l) { in map_pgsz() 505 for (l = mmu.umax_page_level; l > 0; --l) { in map_pgsz() 562 if (mmu.max_page_level == 0) in map_pgszcvec() 840 mmu.umax_page_level; in map_addr_proc() 1269 pfnseg = mmu.highest_pfn; in page_get_contigpage() 1837 for (i = 0; i <= mmu.max_page_level; i++) { in page_coloring_init() 1857 for (i = 0; i <= mmu.max_page_level; i++) { in page_coloring_init() 1878 for (i = 0; i <= mmu.max_page_level; i++) { in page_coloring_init() 4051 offset += mmu.hole_start; /* something in VA hole */ in page_get_physical()
|
/illumos-gate/usr/src/cmd/mdb/i86pc/modules/unix/ |
H A D | i86mmu.c | 71 if (mmu.num_level == 0) in platform_vtop() 165 struct hat_mmu_info mmu; variable 185 if (mmu.num_level != 0) in init_mmu() 188 if (mdb_readsym(&mmu, sizeof (mmu), "mmu") == -1) in init_mmu() 421 if (PTE_GET(pte, mmu.pt_nx)) in do_pte_dcmd() 430 if (PTE_GET(pte, mmu.pt_global)) in do_pte_dcmd() 488 if (mmu.num_level == 0) in pte_dcmd() 498 if (level > mmu.max_level) { in pte_dcmd() 514 entry >>= mmu.level_shift[htable->ht_level]; in va2entry() 525 ptr += va2entry(htable, addr) << mmu.pte_size_shift; in get_pte() [all …]
|
/illumos-gate/usr/src/lib/libvmm/ |
H A D | libvmm.c | 718 vmm_vcpu_mmu_mode(vmm_t *vmm, int vcpuid __unused, vmm_mmu_t *mmu) in vmm_vcpu_mmu_mode() argument 720 if ((mmu->vm_cr0 & CR0_PE) == 0) in vmm_vcpu_mmu_mode() 722 else if ((mmu->vm_cr4 & CR4_PAE) == 0) in vmm_vcpu_mmu_mode() 724 else if ((mmu->vm_efer & AMD_EFER_LME) == 0) in vmm_vcpu_mmu_mode() 733 vmm_mmu_t mmu = { 0 }; in vmm_vcpu_mode() local 736 vmm_mmu_regnum, (uint64_t *)&mmu) != 0) in vmm_vcpu_mode() 739 return (vmm_vcpu_mmu_mode(vmm, vcpuid, &mmu)); in vmm_vcpu_mode() 817 vmm_mmu_t mmu = { 0 }; in vmm_vtop() local 824 vmm_mmu_regnum, (uint64_t *)&mmu) != 0) in vmm_vtop() 827 if ((mmu.vm_cr0 & CR0_PG) == 0) { in vmm_vtop() [all …]
|
/illumos-gate/usr/src/uts/i86xpv/os/ |
H A D | xpv_panic.c | 169 if (mmu.pae_hat) in xpv_panic_map() 200 for (l = mmu.max_level; l >= 0; l--) in xpv_va_walk() 208 for (l = mmu.max_level; l >= 0; l--) { in xpv_va_walk() 219 if (l == mmu.max_level && mmu.pae_hat) in xpv_va_walk() 228 (idx << mmu.pte_size_shift)); in xpv_va_walk() 233 scan_va += mmu.level_size[l]; in xpv_va_walk() 756 for (l = mmu.max_level; l >= 0; l--) in xpv_do_panic() 757 xpv_panic_nptes[l] = mmu.ptes_per_table; in xpv_do_panic() 995 for (i = 0; i < mmu.num_level; i++) in xpv_panic_init()
|
/illumos-gate/usr/src/uts/i86pc/os/ |
H A D | startup.c | 359 ((uintptr_t)P2ROUNDUP((uintptr_t)(x), mmu.level_size[1])) 363 ((uintptr_t)P2ROUNDUP((uintptr_t)(x), mmu.level_size[mmu.max_level])) 633 valloc_align = mmu.level_size[mmu.max_page_level > 0]; in perform_allocations() 1093 mmu.pt_nx = 0; in startup_memlist() 1095 PRM_DEBUG(mmu.pt_nx); in startup_memlist() 2002 if (!auto_lpg_disable && mmu.max_page_level > 0) { in startup_vm() 2010 if (physmem < privm_lpg_min_physmem || mmu.max_page_level == 0 || in startup_vm() 2015 mcntl0_lpsize = LEVEL_SIZE(mmu.umax_page_level); in startup_vm()
|
H A D | trap.c | 498 (mmu.pt_nx != 0 && (errcode & PF_ERR_EXEC))) { in trap() 832 (mmu.pt_nx != 0 && (errcode & PF_ERR_EXEC))) { in trap()
|
/illumos-gate/usr/src/uts/intel/asm/ |
H A D | Makefile | 37 mmu.h \
|
/illumos-gate/usr/src/cmd/mdb/intel/modules/mdb_kb/ |
H A D | mdb_kb.c | 744 xkb_get_pte(mmu_info_t *mmu, char *ptep) in xkb_get_pte() argument 748 if (mmu->mi_ptesize == 8) { in xkb_get_pte() 778 mmu_info_t *mmu = &xkb->xkb_mmu; in xkb_va_to_mfn() local 782 for (level = mmu->mi_max; ; --level) { in xkb_va_to_mfn() 788 entry = (va >> mmu->mi_shift[level]) & (mmu->mi_ptes - 1); in xkb_va_to_mfn() 790 pte = xkb_get_pte(mmu, (char *)xkb->xkb_pt_map[level].mm_map + in xkb_va_to_mfn() 791 entry * mmu->mi_ptesize); in xkb_va_to_mfn() 806 mfn += (va & ((1 << mmu->mi_shift[level]) - 1)) >> in xkb_va_to_mfn()
|
/illumos-gate/usr/src/uts/sun4v/ml/ |
H A D | wbuf.S | 60 ! g5 = mmu trap type, g6 = tag access reg (g5 != T_ALIGNMENT) or 196 ! g5 = mmu trap type, g6 = tag access reg (g5 != T_ALIGNMENT) or 396 ! g5 = mmu trap type, g6 = tag access reg (g5 != T_ALIGNMENT) or
|
/illumos-gate/usr/src/ |
H A D | Makefile.psm | 52 ROOT_PSM_MMU_DIR_32 = $(ROOT_PSM_MOD_DIR)/mmu 71 ROOT_PSM_MMU_DIR_64 = $(ROOT_PSM_MOD_DIR)/mmu/$(SUBDIR64)
|
/illumos-gate/usr/src/uts/sun4u/ml/ |
H A D | wbuf.S | 59 ! g5 = mmu trap type, g6 = tag access reg (g5 != T_ALIGNMENT) or 193 ! g5 = mmu trap type, g6 = tag access reg (g5 != T_ALIGNMENT) or 334 ! g5 = mmu trap type, g6 = tag access reg (g5 != T_ALIGNMENT) or
|
H A D | trap_table.S | 2697 SWITCH_GLOBALS ! back to mmu globals
|
/illumos-gate/usr/src/uts/sun4/io/fpc/ |
H A D | fpc.h | 55 mmu, enumerator
|
H A D | fpc-kstats.c | 266 case mmu: in fpc_dev_kstat() 318 else if (reg_group == mmu) in fpc_dev_kstat()
|
/illumos-gate/usr/src/uts/sun4u/io/px/ |
H A D | px_err_impl.h | 207 PX_ERPT_SEND_DEC(mmu);
|
H A D | px_err.c | 290 { MMU_BIT_DESC(TTC_CAE, panic, mmu) } 613 { CHP_FO, MnT6(mmu), R4(MMU), "MMU Error"}, 1751 PX_ERPT_SEND_DEC(mmu) in PX_ERPT_SEND_DEC() argument
|
/illumos-gate/usr/src/uts/sun4/ml/ |
H A D | swtch.S | 146 ldn [THREAD_REG + T_PROCP], %i2 ! load old curproc - for mmu
|
/illumos-gate/usr/src/uts/sfmmu/ml/ |
H A D | sfmmu_asm.S | 581 lduw [%o2 + CPU_MMU_IDX], %g2 ! %g2 = mmu index
|