Lines Matching defs:newpte
610 static void pmap_fill_ptp(pt_entry_t *firstpte, pt_entry_t newpte);
960 pt_entry_t startpte, origpte, newpte;
968 origpte = newpte = be64toh(*pte);
993 m = PHYS_TO_VM_PAGE(newpte & PG_FRAME);
997 if ((newpte & (RPTE_EAA_R|RPTE_EAA_X)) == 0)
999 newpte |= PG_A;
1003 if ((newpte & RPTE_EAA_W) == 0)
1007 newpte |= PG_M;
1011 if ((newpte & RPTE_EAA_X) == 0)
1013 newpte |= PG_A;
1018 if (!atomic_cmpset_long(pte, htobe64(origpte), htobe64(newpte)))
1022 if (startpte == newpte)
2832 pt_entry_t newpte, origpte;
2853 newpte = (pt_entry_t)(pa | PG_A | PG_V | RPTE_LEAF);
2855 newpte |= PG_M;
2857 newpte |= PG_A;
2859 newpte |= RPTE_EAA_R;
2861 newpte |= RPTE_EAA_W;
2862 KASSERT((newpte & (PG_M | PG_RW)) != PG_M,
2866 newpte |= PG_X;
2868 newpte |= PG_W;
2870 newpte |= RPTE_EAA_P;
2871 newpte |= pmap_cache_bits(m->md.mdpg_cache_attrs);
2878 if ((newpte & PG_RW) != 0)
2879 newpte |= PG_M;
2881 newpte |= PG_MANAGED;
2889 rv = pmap_enter_l3e(pmap, va, newpte | RPTE_LEAF, flags, m, &lock);
2950 if ((newpte & PG_W) != 0 && (origpte & PG_W) == 0)
2952 else if ((newpte & PG_W) == 0 && (origpte & PG_W) != 0)
2974 (newpte & PG_RW) != 0)
2976 if (((origpte ^ newpte) & ~(PG_M | PG_A)) == 0) {
2977 if ((newpte & (PG_A|PG_M)) != (origpte & (PG_A|PG_M))) {
2978 if (!atomic_cmpset_long(pte, htobe64(origpte), htobe64(newpte)))
2980 if ((newpte & PG_M) != (origpte & PG_M))
2982 if ((newpte & PG_A) != (origpte & PG_A))
2987 if (((origpte ^ newpte) & ~(PG_M | PG_A)) == 0)
3020 if ((newpte & PG_MANAGED) == 0)
3055 if ((newpte & PG_W) != 0)
3063 if ((newpte & PG_MANAGED) != 0) {
3076 if ((newpte & PG_RW) != 0)
3085 origpte = be64toh(pte_load_store(pte, htobe64(newpte)));
3088 if ((newpte & PG_M) == 0 && (origpte & (PG_M | PG_RW)) ==
3099 } else if ((origpte & PG_X) != 0 || (newpte & PG_X) == 0) {
3109 pte_store(pte, newpte);
4904 pmap_fill_ptp(pt_entry_t *firstpte, pt_entry_t newpte)
4909 *pte = htobe64(newpte);
4910 newpte += PAGE_SIZE;
4993 ("pmap_demote_l3e: firstpte and newpte map different physical"