_PAGE_HASHPTE
#ifndef _PAGE_HASHPTE
return __pte(pte_update(ptep, ~_PAGE_HASHPTE, 0));
do { pte_update(mm, addr, ptep, ~_PAGE_HASHPTE, 0, 0); } while (0)
if (old & _PAGE_HASHPTE)
pte_t old_pte = __pte(pte_update(mm, addr, ptep, ~_PAGE_HASHPTE, 0, 0));
#define pte_same(A,B) (((pte_val(A) ^ pte_val(B)) & ~_PAGE_HASHPTE) == 0)
#define _PTE_NONE_MASK (0xffffffff00000000ULL | _PAGE_HASHPTE)
#define _PTE_NONE_MASK _PAGE_HASHPTE
return !!(pte_val(pte) & _PAGE_HASHPTE);
#define _PAGE_HPTEFLAGS _PAGE_HASHPTE
*ptep = __pte((pte_val(*ptep) & _PAGE_HASHPTE) |
(pte_val(pte) & ~_PAGE_HASHPTE));
if (pte_val(*ptep) & _PAGE_HASHPTE)
pte_update(mm, addr, ptep, ~_PAGE_HASHPTE, pte_val(pte), 0);
#define _PAGE_CHG_MASK (PTE_RPN_MASK | _PAGE_HASHPTE | _PAGE_DIRTY | \
if (pte_val(*ptep) & _PAGE_HASHPTE)