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