pte_user
return pte_valid(pte) && (pte_user(pte) || pte_user_exec(pte));
return pte_present_invalid(pte) && !pte_user(pte) && !pte_user_exec(pte);
#define pmd_user(pmd) pte_user(pmd_pte(pmd))
#define pud_user(pud) pte_user(pud_pte(pud))
if (pte_present(pte) && pte_user(pte))
if (!pte_present(pte) || !pte_user(pte) || !pte_read(pte))
return pte_present(pte) && pte_user(pte);
return pte_user(pmd_pte(pmd));
return pte_present(pte) && pte_user(pte);
bool check_pkey, check_write, ff, uf, wf, pte_user;
pte_user = pfec & PFERR_RSVD_MASK;
check_pkey = (!ff && pte_user);