PTE2_NM
#define PTE2_PROMOTE (PTE2_V | PTE2_A | PTE2_NM | PTE2_S | PTE2_NG | \
(((l2_attr) & PTE2_NM) ? PTE1_NM : 0) | \
(((l1_attr) & PTE1_NM) ? PTE2_NM : 0) | \
if ((fpte2 & (PTE2_NM | PTE2_RO)) == PTE2_NM) {
if ((pte2 & (PTE2_NM | PTE2_RO)) == PTE2_NM) {
npte2 |= PTE2_NM;
KASSERT((npte2 & (PTE2_NM | PTE2_RO)) != PTE2_RO,
if ((opte2 & ~(PTE2_NM | PTE2_A)) != (npte2 & ~(PTE2_NM | PTE2_A))) {
l2prot = PTE2_RO | PTE2_NM;
npte2 |= PTE2_RO | PTE2_NM;
pte2_store(pte2p, opte2 | PTE2_RO | PTE2_NM);
pte2_set_bit(pte2p, PTE2_NM);
pte2_set_bit(pte2p, PTE2_NM | PTE2_RO);
pte2_set_bit(pte2p, PTE2_NM);
PTE2_AP_KR | PTE2_NM, vm_page_pte2_attr(src)));
PTE2_AP_KR | PTE2_NM, vm_page_pte2_attr(a_pg)));
temp_pte2 |= PTE2_NM;
(pte2 & PTE2_NM)) {
pte2_store(pte2p, pte2 & ~PTE2_NM);
return ((pte2 & (PTE2_NM | PTE2_RO)) == 0);
#define PTE2_AP_KR (PTE2_RO | PTE2_NM)
#define PTE2_AP_KRUR (PTE2_RO | PTE2_NM | PTE2_U)