/freebsd-current/sys/i386/include/ |
H A D | pmap_pae.h | 97 #define pte_load_store(ptep, pte) atomic_swap_64_i586(ptep, pte) 99 #define pte_store(ptep, pte) atomic_store_rel_64_i586(ptep, pte) 100 #define pte_store_zero(ptep, pte) \ 106 *(p + 1) = (uint32_t)(pte >> 32); \ 108 *p = (uint32_t)pte; \
|
H A D | pmap_nopae.h | 80 #define pte_load_store(ptep, pte) atomic_swap_int(ptep, pte) 82 #define pte_store(ptep, pte) do { \ 83 *(u_int *)(ptep) = (u_int)(pte); \ 85 #define pte_store_zero(ptep, pte) pte_store(ptep, pte)
|
/freebsd-current/sys/powerpc/include/ |
H A D | vm.h | 32 #include <machine/pte.h>
|
H A D | pte.h | 33 * $NetBSD: pte.h,v 1.2 1998/08/31 14:43:40 tsubai Exp $ 47 struct pte { struct 53 struct pte pt[8]; 78 typedef struct pte pte_t; 296 #define PTE_TSIZE(pte) (int)((*pte >> PTE_TSIZE_SHIFT) & PTE_TSIZE_MASK) 297 #define PTE_TSIZE_DIRECT(pte) (int)((*pte >> PTE_TSIZE_SHIFT_DIRECT) & PTE_TSIZE_MASK_DIRECT) 303 #define PTE_PA(pte) ((vm_paddr_t)(*pte >> PTE_ARPN_SHIF [all...] |
/freebsd-current/lib/libkvm/ |
H A D | kvm_minidump_arm.c | 61 arm_pt_entry_t *pte = _kvm_pmap_get(kd, pteindex, sizeof(*pte)); local 63 return _kvm32toh(kd, *pte); 153 arm_pt_entry_t pte; local 167 if (pteindex >= vm->hdr.ptesize / sizeof(pte)) 169 pte = _arm_pte_get(kd, pteindex); 170 if ((pte & ARM_L2_TYPE_MASK) == ARM_L2_TYPE_INV) { 172 "_arm_minidump_kvatop: pte not valid"); 175 if ((pte & ARM_L2_TYPE_MASK) == ARM_L2_TYPE_L) { 178 a = (pte 212 _arm_entry_to_prot(kvm_t *kd, arm_pt_entry_t pte) argument 240 arm_pt_entry_t pte = _arm_pte_get(kd, pteindex); local [all...] |
H A D | kvm_minidump_powerpc64_hpt.c | 311 ppc64_pt_entry_t pte, *p; local 313 p = _kvm_pmap_get(kd, ptex, sizeof(pte)); 314 pte.pte_hi = be64toh(p->pte_hi); 315 pte.pte_lo = be64toh(p->pte_lo); 316 return (pte); 328 ppc64_pt_entry_t pte; local 379 pte = pte_get(kd, ptex); 382 if ((pte.pte_hi & LPTEH_HID) != hid || 383 (pte.pte_hi & LPTEH_VALID) == 0 || 384 (pte 430 pte_lookup(kvm_t *kd, kvaddr_t ea, ppc64_pt_entry_t *pte) argument 447 ppc64_pt_entry_t pte; local 519 entry_to_prot(ppc64_pt_entry_t *pte) argument 561 get_ea(kvm_t *kd, ppc64_pt_entry_t *pte, u_long ptex) argument 617 ppc64_pt_entry_t pte = pte_get(kd, ptex); local [all...] |
H A D | kvm_minidump_i386.c | 58 i386_pte_pae_t *pte = _kvm_pmap_get(kd, pteindex, sizeof(*pte)); local 60 return le64toh(*pte); 66 i386_pte_t *pte = _kvm_pmap_get(kd, pteindex, sizeof(*pte)); local 68 return le32toh(*pte); 150 i386_pte_pae_t pte; local 160 if (pteindex >= vm->hdr.ptesize / sizeof(pte)) 162 pte = _i386_pte_pae_get(kd, pteindex); 163 if ((pte 195 i386_pte_t pte; local 250 _i386_entry_to_prot(uint64_t pte) argument [all...] |
H A D | kvm_i386.c | 218 i386_pte_t pte; local 269 pte_pa = (pde & I386_PG_FRAME) + (pteindex * sizeof(pte)); 272 if (s < sizeof(pte)) { 278 if (pread(kd->pmfd, &pte, sizeof(pte), ofs) != sizeof(pte)) { 282 pte = le32toh(pte); 283 if ((pte & I386_PG_V) == 0) { 284 _kvm_err(kd, kd->program, "_kvm_kvatop: pte no 308 i386_pte_pae_t pte; local [all...] |
H A D | kvm_arm.c | 188 #define l2pte_valid(pte) ((pte) != 0) 197 arm_pt_entry_t pte; local 211 pte_pa = (pd & ARM_L1_C_ADDR_MASK) + l2pte_index(va) * sizeof(pte); 213 if (pread(kd->pmfd, &pte, sizeof(pte), pte_off) != sizeof(pte)) { 217 pte = _kvm32toh(kd, pte); 218 if (!l2pte_valid(pte)) { [all...] |
H A D | kvm_minidump_amd64.c | 86 amd64_pte_t *pte = _kvm_pmap_get(kd, pteindex, sizeof(*pte)); local 88 return le64toh(*pte); 188 amd64_pte_t pte; local 198 if (pteindex >= vm->hdr.pmapsize / sizeof(pte)) 200 pte = _amd64_pte_get(kd, pteindex); 201 if ((pte & AMD64_PG_V) == 0) { 203 "_amd64_minidump_vatop_v1: pte not valid"); 206 a = pte & AMD64_PG_FRAME; 246 amd64_pte_t pte; local 393 amd64_pte_t pte = (u_long)ptes[i]; local [all...] |
H A D | kvm_aarch64.h | 30 #include <machine/pte.h> 42 /* Source: arm64/include/pte.h */
|
H A D | kvm_minidump_riscv.c | 58 riscv_pt_entry_t *pte = _kvm_pmap_get(kd, pteindex, sizeof(*pte)); local 60 return le64toh(*pte); 174 "_riscv_minidump_vatop: pte not valid"); 223 _riscv_entry_to_prot(riscv_pt_entry_t pte) argument 227 if ((pte & RISCV_PTE_W) != 0) 229 if ((pte & RISCV_PTE_X) != 0) 248 riscv_pt_entry_t pte = _riscv_pte_get(kd, pteindex); local 250 if (((pte & RISCV_PTE_V) == 0) || 251 ((pte [all...] |
H A D | kvm_minidump_aarch64.c | 60 aarch64_pte_t *pte = _kvm_pmap_get(kd, pteindex, sizeof(*pte)); local 62 return le64toh(*pte); 253 _aarch64_entry_to_prot(aarch64_pte_t pte) argument 258 if ((pte & AARCH64_ATTR_AP(AARCH64_ATTR_AP_RO)) == 0) 260 if ((pte & AARCH64_ATTR_XN) == 0) 279 aarch64_pte_t pte = _aarch64_pte_get(kd, pteindex); local 281 if ((pte & AARCH64_ATTR_DESCR_MASK) != AARCH64_L3_PAGE) 285 pa = pte & ~AARCH64_ATTR_MASK; 288 _aarch64_entry_to_prot(pte), k [all...] |
H A D | kvm_amd64.c | 175 amd64_pte_t pte; local 276 if (s < sizeof(pte)) { 280 if (pread(kd->pmfd, &pte, sizeof(pte), ofs) != sizeof(pte)) { 284 if ((pte & AMD64_PG_V) == 0) { 285 _kvm_err(kd, kd->program, "_amd64_vatop: pte not valid"); 289 a = (pte & AMD64_PG_FRAME) + offset;
|
/freebsd-current/sys/powerpc/pseries/ |
H A D | mmu_phyp.c | 247 rm_init(&mphyp_eviction_lock, "pte eviction"); 298 struct lpte pte; local 302 phyp_pft_hcall(H_READ, 0, pvo->pvo_pte.slot, 0, 0, &pte.pte_hi, 303 &pte.pte_lo, &junk); 304 if ((pte.pte_hi & LPTE_AVPN_MASK) != 308 if (!(pte.pte_hi & LPTE_VALID)) 311 return (pte.pte_lo & (LPTE_CHG | LPTE_REF)); 371 struct lpte pte; local 377 moea64_pte_from_pvo(pvo, &pte); 380 pte 430 mphyp_pte_insert_locked(struct pvo_entry *pvo, struct lpte *pte) argument 471 mphyp_pte_evict_and_insert_locked(struct pvo_entry *pvo, struct lpte *pte) argument 525 struct lpte pte; local 585 struct lpte pte; local 622 struct lpte pte; local [all...] |
/freebsd-current/sys/powerpc/booke/ |
H A D | pmap_64.c | 96 #include <machine/pte.h> 206 pte_t *pte; local 230 pte = &pm_root[i][j][k][l]; 231 if (!PTE_ISVALID(pte)) 237 return (pte); 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; local 390 pte 445 pte_t *ptbl, *pte, pte_tmp; local 507 pte_t *pte; local 519 pte_t *pte; local 636 pte_t *pte; local [all...] |
H A D | pmap_32.c | 94 #include <machine/pte.h> 342 * Called when removing pte entry from ptbl. 377 * Free ptbl pages if there are no pte etries in this ptbl. 392 * Increment hold count for ptbl pages. This routine is used when a new pte 424 * Clean pte entry, try to free page table page if requested. 435 pte_t *pte; local 444 pte = &ptbl[ptbl_idx]; 446 if (pte == NULL || !PTE_ISVALID(pte)) 449 if (PTE_ISWIRED(pte)) 504 pte_t *ptbl, *pte, pte_tmp; local 571 pte_t *pte; local 600 pte_t *pte; local 627 pte_t *pte; local 726 pte_t *pte; local 881 pte_t *pte; local 916 pte_t *pte; local [all...] |
H A D | pmap.c | 123 #include <machine/pte.h> 1141 pte_t *pte; local 1150 pte = pte_find(kernel_pmap, va); 1151 KASSERT((pte != NULL), ("mmu_booke_kenter: invalid va. NULL PTE")); 1156 if (PTE_ISVALID(pte)) { 1163 *pte = PTE_RPN_FROM_PA(pa) | flags; 1167 // pdir_idx, ptbl_idx, va, pa, pte->rpn, pte->flags); 1183 pte_t *pte; local 1191 pte 1277 pte_t *pte; local 1501 pte_t *pte; local 1668 pte_t *pte; local 1709 pte_t *pte; local 1753 pte_t *pte; local 1794 pte_t *pte; local 1842 pte_t *pte; local 1871 pte_t *pte; local 1920 pte_t *pte; local 1969 pte_t *pte; local 2024 pte_t *pte; local 2130 pte_t *pte; local 2370 pte_t *pte; local [all...] |
/freebsd-current/sys/i386/i386/ |
H A D | pmap.c | 195 #define pmap_pde_v(pte) ((*(int *)pte & PG_V) != 0) 196 #define pmap_pte_w(pte) ((*(int *)pte & PG_W) != 0) 197 #define pmap_pte_m(pte) ((*(int *)pte & PG_M) != 0) 198 #define pmap_pte_u(pte) ((*(int *)pte & PG_A) != 0) 199 #define pmap_pte_v(pte) ((*(int *)pte 610 pt_entry_t *pte, *unused __unused; local 914 pt_entry_t *pte; local 931 pt_entry_t *pte; local 1121 pmap_pat_index(pmap_t pmap, pt_entry_t pte, bool is_pde) argument 1532 pmap_pte_release(pt_entry_t *pte) argument 1637 pt_entry_t *eh_ptep, pte, *ptep; local 1691 pt_entry_t pte; local 1720 pt_entry_t pte; local 1757 pt_entry_t *pte; local 1766 pt_entry_t *pte; local 1782 pt_entry_t *pte; local 1857 pt_entry_t *endpte, oldpte, pa, *pte; local 2315 pt_entry_t *pte, tpte; local 2746 pt_entry_t *pte; local 3042 pt_entry_t *pte; local 3060 pt_entry_t *pte; local 3209 pt_entry_t *pte, tpte; local 3319 pt_entry_t *pte; local 3478 pt_entry_t allpte_PG_A, *firstpte, oldpte, pa, *pte; local 3654 pt_entry_t *pte; local 3943 pt_entry_t *pt_end, *pte; local 4160 pt_entry_t newpte, *pte; local 4375 pt_entry_t *pte; local 4798 pt_entry_t *pte; local 4845 pt_entry_t *pte, tpte; local 5008 pt_entry_t *pte; local 5078 pt_entry_t *pte; local 5108 pt_entry_t oldpte, *pte; local 5184 pt_entry_t *pte; local 5289 pt_entry_t *pte; local 5413 pt_entry_t *pte; local 5483 pmap_pte_attr(pt_entry_t *pte, int cache_bits) argument 5716 pt_entry_t *pte; local 5824 pt_entry_t pte; local 5936 pt_entry_t *pte; local 5955 pt_entry_t *pte; local 6111 pt_entry_t *pte; local 6147 pt_entry_t *pte; local 6158 pt_entry_t *pte; local 6173 pt_entry_t *pte; member in struct:bios16_pmap_handle 6308 sysctl_kmaps_check(struct sbuf *sb, struct pmap_kernel_map_range *range, vm_offset_t va, pd_entry_t pde, pt_entry_t pte) argument 6339 pt_entry_t *pt, pte; local [all...] |
/freebsd-current/sys/powerpc/ps3/ |
H A D | mmu_ps3.c | 200 struct lpte pte; local 210 moea64_pte_from_pvo(pvo, &pte); 212 pte.pte_lo |= refchg; 213 pte.pte_lo &= ~ptebit; 215 lv1_write_htab_entry(mps3_vas_id, pvo->pvo_pte.slot, pte.pte_hi, 216 pte.pte_lo); 246 struct lpte pte, evicted; local 256 moea64_pte_from_pvo(pvo, &pte); 261 pte.pte_hi, pte [all...] |
/freebsd-current/sys/x86/iommu/ |
H A D | x86_iommu.h | 36 uint64_t pte; member in struct:iommu_pte
|
H A D | intel_idpgtbl.c | 112 iommu_pte_t *pte; local 130 pte = iommu_map_pgtbl(tbl->pgtbl_obj, idx, IOMMU_PGF_WAITOK, &sf); 135 pte[i].pte = (DMAR_PTE_ADDR_MASK & f) | 145 pte[i].pte = (DMAR_PTE_ADDR_MASK & 319 * Index of the pte for the guest address base in the page table at 358 iommu_pte_t *pte, *ptep; local 366 pte = (iommu_pte_t *)sf_buf_kva(*sf); 372 pte 424 iommu_pte_t *pte; local 583 domain_unmap_clear_pte(struct dmar_domain *domain, iommu_gaddr_t base, int lvl, int flags, iommu_pte_t *pte, struct sf_buf **sf, bool free_sf) argument 615 iommu_pte_t *pte; local [all...] |
/freebsd-current/sys/powerpc/aim/ |
H A D | mmu_oea.c | 146 #include <machine/pte.h> 161 #define PVO_PADDR(pvo) ((pvo)->pvo_pte.pte.pte_lo & PTE_RPGN) 252 static int moea_pte_insert(u_int, struct pte *); 261 static struct pte *moea_pvo_to_pte(const struct pvo_entry *, int); 526 moea_pte_compare(const struct pte *pt, const struct pte *pvo_pt) 535 moea_pte_match(struct pte *pt, u_int sr, vm_offset_t va, int which) 543 moea_pte_create(struct pte *pt, u_int sr, vm_offset_t va, u_int pte_lo) 550 * set when the real pte is set in memory. 560 moea_pte_synch(struct pte *p [all...] |
H A D | mmu_radix.c | 82 #include <machine/pte.h> 330 pt_entry_t *pte; local 334 pte = (pt_entry_t *)PHYS_TO_DMAP(ptepa); 335 return (&pte[pmap_pte_index(va)]); 841 #define pte_load_store(ptep, pte) atomic_swap_long(ptep, pte) 843 #define pte_store(ptep, pte) do { \ 844 MPASS((pte) & (RPTE_EAA_R | RPTE_EAA_W | RPTE_EAA_X)); \ 845 *(u_long *)(ptep) = htobe64((u_long)((pte) | PG_V | RPTE_LEAF)); \ 919 pt_entry_t *pte; local 937 pt_entry_t *pte; local 959 pt_entry_t *pte; local 1381 pt_entry_t *pte, tpte; local 1784 pt_entry_t *pte, pteval; local 1842 pt_entry_t *pte; local 2225 pt_entry_t *pte; local 2431 pt_entry_t oldpte, *pte; local 2727 pt_entry_t *firstpte, oldpte, pa, *pte; local 2831 pt_entry_t *pte; local 3363 pt_entry_t *pte; local 3489 pt_entry_t *pte; local 3521 pt_entry_t pte; local 3744 pt_entry_t *pte, mask; local 3835 pt_entry_t *pte; local 3887 pt_entry_t *pte; local 4167 pt_entry_t *pte; local 4530 pt_entry_t *pte; local 4654 pt_entry_t oldpte, pa, *pte; local 4695 pt_entry_t *pte; local 4891 pt_entry_t *pte; local 5141 pt_entry_t *pte; local 5169 pt_entry_t *pte; local 5325 pt_entry_t *pte, tpte; local 5432 pt_entry_t *pte, tpte; local 5610 pt_entry_t oldpte, *pte; local 5701 pt_entry_t *pte; local 5791 pt_entry_t pte; local 5979 pmap_pte_attr(pt_entry_t *pte, uint64_t cache_bits, uint64_t mask) argument 6103 pt_entry_t *pte, pteval; local 6116 pt_entry_t *pte; local 6202 pt_entry_t *pte; local 6464 pt_entry_t *pte; local [all...] |
/freebsd-current/sys/amd64/amd64/ |
H A D | efirt_machdep.c | 112 pt_entry_t *pte; local 164 pte = (pt_entry_t *)PHYS_TO_DMAP(mphys); 165 pte += pmap_pte_index(va); 166 KASSERT(*pte == 0, ("va %#jx *pt %#jx", va, *pte)); 168 return (pte); 175 pt_entry_t *pte; local 243 pte = efi_1t1_pte(va); 244 pte_store(pte, va | bits);
|