Lines Matching refs:rste
23 unsigned long rste; in __pte_to_rste() local
46 rste = pte_val(pte) & PAGE_MASK; in __pte_to_rste()
47 rste |= move_set_bit(pte_val(pte), _PAGE_READ, in __pte_to_rste()
49 rste |= move_set_bit(pte_val(pte), _PAGE_WRITE, in __pte_to_rste()
51 rste |= move_set_bit(pte_val(pte), _PAGE_INVALID, in __pte_to_rste()
53 rste |= move_set_bit(pte_val(pte), _PAGE_PROTECT, in __pte_to_rste()
55 rste |= move_set_bit(pte_val(pte), _PAGE_DIRTY, in __pte_to_rste()
57 rste |= move_set_bit(pte_val(pte), _PAGE_YOUNG, in __pte_to_rste()
60 rste |= move_set_bit(pte_val(pte), _PAGE_SOFT_DIRTY, in __pte_to_rste()
63 rste |= move_set_bit(pte_val(pte), _PAGE_NOEXEC, in __pte_to_rste()
66 rste = _SEGMENT_ENTRY_EMPTY; in __pte_to_rste()
67 return rste; in __pte_to_rste()
70 static inline pte_t __rste_to_pte(unsigned long rste) in __rste_to_pte() argument
75 if ((rste & _REGION_ENTRY_TYPE_MASK) == _REGION_ENTRY_TYPE_R3) in __rste_to_pte()
76 present = pud_present(__pud(rste)); in __rste_to_pte()
78 present = pmd_present(__pmd(rste)); in __rste_to_pte()
101 pte_val(pte) = rste & _SEGMENT_ENTRY_ORIGIN_LARGE; in __rste_to_pte()
103 pte_val(pte) |= move_set_bit(rste, _SEGMENT_ENTRY_READ, in __rste_to_pte()
105 pte_val(pte) |= move_set_bit(rste, _SEGMENT_ENTRY_WRITE, in __rste_to_pte()
107 pte_val(pte) |= move_set_bit(rste, _SEGMENT_ENTRY_INVALID, in __rste_to_pte()
109 pte_val(pte) |= move_set_bit(rste, _SEGMENT_ENTRY_PROTECT, in __rste_to_pte()
111 pte_val(pte) |= move_set_bit(rste, _SEGMENT_ENTRY_DIRTY, in __rste_to_pte()
113 pte_val(pte) |= move_set_bit(rste, _SEGMENT_ENTRY_YOUNG, in __rste_to_pte()
116 pte_val(pte) |= move_set_bit(rste, _SEGMENT_ENTRY_SOFT_DIRTY, in __rste_to_pte()
119 pte_val(pte) |= move_set_bit(rste, _SEGMENT_ENTRY_NOEXEC, in __rste_to_pte()
126 static void clear_huge_pte_skeys(struct mm_struct *mm, unsigned long rste) in clear_huge_pte_skeys() argument
132 rste & _SEGMENT_ENTRY_INVALID) in clear_huge_pte_skeys()
135 if ((rste & _REGION_ENTRY_TYPE_MASK) == _REGION_ENTRY_TYPE_R3) { in clear_huge_pte_skeys()
136 page = pud_page(__pud(rste)); in clear_huge_pte_skeys()
138 paddr = rste & PUD_MASK; in clear_huge_pte_skeys()
140 page = pmd_page(__pmd(rste)); in clear_huge_pte_skeys()
142 paddr = rste & PMD_MASK; in clear_huge_pte_skeys()
152 unsigned long rste; in set_huge_pte_at() local
154 rste = __pte_to_rste(pte); in set_huge_pte_at()
156 rste &= ~_SEGMENT_ENTRY_NOEXEC; in set_huge_pte_at()
160 rste |= _REGION_ENTRY_TYPE_R3 | _REGION3_ENTRY_LARGE; in set_huge_pte_at()
162 rste |= _SEGMENT_ENTRY_LARGE; in set_huge_pte_at()
163 clear_huge_pte_skeys(mm, rste); in set_huge_pte_at()
164 pte_val(*ptep) = rste; in set_huge_pte_at()