Lines Matching refs:pmds
222 static void free_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in free_pmds() argument
227 if (pmds[i]) { in free_pmds()
228 pgtable_pmd_page_dtor(virt_to_page(pmds[i])); in free_pmds()
229 free_page((unsigned long)pmds[i]); in free_pmds()
234 static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[], int count) in preallocate_pmds() argument
254 pmds[i] = pmd; in preallocate_pmds()
258 free_pmds(mm, pmds, count); in preallocate_pmds()
305 static void pgd_prepopulate_pmd(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmds[]) in pgd_prepopulate_pmd() argument
318 pmd_t *pmd = pmds[i]; in pgd_prepopulate_pmd()
330 pgd_t *k_pgd, pmd_t *pmds[]) in pgd_prepopulate_user_pmd() argument
345 pmd_t *pmd = pmds[i]; in pgd_prepopulate_user_pmd()
356 pgd_t *k_pgd, pmd_t *pmds[]) in pgd_prepopulate_user_pmd() argument
438 pmd_t *pmds[MAX_PREALLOCATED_PMDS]; in pgd_alloc() local
447 if (preallocate_pmds(mm, pmds, PREALLOCATED_PMDS) != 0) in pgd_alloc()
464 pgd_prepopulate_pmd(mm, pgd, pmds); in pgd_alloc()
474 free_pmds(mm, pmds, PREALLOCATED_PMDS); in pgd_alloc()