Lines Matching refs:pte
44 static inline int pte_looks_normal(pte_t pte) in pte_looks_normal() argument
46 return (pte_val(pte) & in pte_looks_normal()
51 static struct page *maybe_pte_to_page(pte_t pte) in maybe_pte_to_page() argument
53 unsigned long pfn = pte_pfn(pte); in maybe_pte_to_page()
72 static pte_t set_pte_filter(pte_t pte) in set_pte_filter() argument
74 pte = __pte(pte_val(pte) & ~_PAGE_HPTEFLAGS); in set_pte_filter()
75 if (pte_looks_normal(pte) && !(cpu_has_feature(CPU_FTR_COHERENT_ICACHE) || in set_pte_filter()
77 struct page *pg = maybe_pte_to_page(pte); in set_pte_filter()
79 return pte; in set_pte_filter()
85 return pte; in set_pte_filter()
88 static pte_t set_access_flags_filter(pte_t pte, struct vm_area_struct *vma, in set_access_flags_filter() argument
91 return pte; in set_access_flags_filter()
100 static pte_t set_pte_filter(pte_t pte) in set_pte_filter() argument
105 if (!(pte_val(pte) & _PAGE_EXEC) || !pte_looks_normal(pte)) in set_pte_filter()
106 return pte; in set_pte_filter()
109 pg = maybe_pte_to_page(pte); in set_pte_filter()
111 return pte; in set_pte_filter()
115 return pte; in set_pte_filter()
121 return pte; in set_pte_filter()
125 return __pte(pte_val(pte) & ~_PAGE_EXEC); in set_pte_filter()
128 static pte_t set_access_flags_filter(pte_t pte, struct vm_area_struct *vma, in set_access_flags_filter() argument
138 if (dirty || (pte_val(pte) & _PAGE_EXEC) || !is_exec_fault()) in set_access_flags_filter()
139 return pte; in set_access_flags_filter()
147 return pte; in set_access_flags_filter()
151 pg = maybe_pte_to_page(pte); in set_access_flags_filter()
164 return __pte(pte_val(pte) | _PAGE_EXEC); in set_access_flags_filter()
173 pte_t pte) in set_pte_at() argument
187 pte = set_pte_filter(pte); in set_pte_at()
190 __set_pte_at(mm, addr, ptep, pte, 0); in set_pte_at()