Lines Matching refs:pmdp
106 unsigned long address, pmd_t *pmdp, in pmdp_set_access_flags() argument
109 int changed = !pmd_same(*pmdp, entry); in pmdp_set_access_flags()
112 set_pmd_at(vma->vm_mm, address, pmdp, entry); in pmdp_set_access_flags()
121 unsigned long address, pmd_t *pmdp) in pmdp_clear_flush_young() argument
125 young = pmdp_test_and_clear_young(vma, address, pmdp); in pmdp_clear_flush_young()
134 pmd_t *pmdp) in pmdp_huge_clear_flush() argument
138 VM_BUG_ON(pmd_present(*pmdp) && !pmd_trans_huge(*pmdp) && in pmdp_huge_clear_flush()
139 !pmd_devmap(*pmdp)); in pmdp_huge_clear_flush()
140 pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); in pmdp_huge_clear_flush()
161 void pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp, in pgtable_trans_huge_deposit() argument
164 assert_spin_locked(pmd_lockptr(mm, pmdp)); in pgtable_trans_huge_deposit()
167 if (!pmd_huge_pte(mm, pmdp)) in pgtable_trans_huge_deposit()
170 list_add(&pgtable->lru, &pmd_huge_pte(mm, pmdp)->lru); in pgtable_trans_huge_deposit()
171 pmd_huge_pte(mm, pmdp) = pgtable; in pgtable_trans_huge_deposit()
177 pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp) in pgtable_trans_huge_withdraw() argument
181 assert_spin_locked(pmd_lockptr(mm, pmdp)); in pgtable_trans_huge_withdraw()
184 pgtable = pmd_huge_pte(mm, pmdp); in pgtable_trans_huge_withdraw()
185 pmd_huge_pte(mm, pmdp) = list_first_entry_or_null(&pgtable->lru, in pgtable_trans_huge_withdraw()
187 if (pmd_huge_pte(mm, pmdp)) in pgtable_trans_huge_withdraw()
195 pmd_t *pmdp) in pmdp_invalidate() argument
197 pmd_t old = pmdp_establish(vma, address, pmdp, pmd_mkinvalid(*pmdp)); in pmdp_invalidate()
205 pmd_t *pmdp) in pmdp_collapse_flush() argument
214 VM_BUG_ON(pmd_trans_huge(*pmdp)); in pmdp_collapse_flush()
215 pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); in pmdp_collapse_flush()