Lines Matching refs:mm

19 pte_t *pte_alloc_one_kernel(struct mm_struct *mm, unsigned long address)  in pte_alloc_one_kernel()  argument
24 pgtable_t pte_alloc_one(struct mm_struct *mm, unsigned long address) in pte_alloc_one() argument
105 static void pgd_set_mm(pgd_t *pgd, struct mm_struct *mm) in pgd_set_mm() argument
107 BUILD_BUG_ON(sizeof(virt_to_page(pgd)->index) < sizeof(mm)); in pgd_set_mm()
108 virt_to_page(pgd)->index = (pgoff_t)mm; in pgd_set_mm()
116 static void pgd_ctor(struct mm_struct *mm, pgd_t *pgd) in pgd_ctor() argument
131 pgd_set_mm(pgd, mm); in pgd_ctor()
171 void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) in pud_populate() argument
173 paravirt_alloc_pmd(mm, __pa(pmd) >> PAGE_SHIFT); in pud_populate()
185 flush_tlb_mm(mm); in pud_populate()
194 static void free_pmds(struct mm_struct *mm, pmd_t *pmds[]) in free_pmds() argument
202 mm_dec_nr_pmds(mm); in free_pmds()
206 static int preallocate_pmds(struct mm_struct *mm, pmd_t *pmds[]) in preallocate_pmds() argument
221 mm_inc_nr_pmds(mm); in preallocate_pmds()
226 free_pmds(mm, pmds); in preallocate_pmds()
239 static void pgd_mop_up_pmds(struct mm_struct *mm, pgd_t *pgdp) in pgd_mop_up_pmds() argument
252 pmd_free(mm, pmd); in pgd_mop_up_pmds()
253 mm_dec_nr_pmds(mm); in pgd_mop_up_pmds()
258 static void pgd_prepopulate_pmd(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmds[]) in pgd_prepopulate_pmd() argument
275 pud_populate(mm, pud, pmd); in pgd_prepopulate_pmd()
354 pgd_t *pgd_alloc(struct mm_struct *mm) in pgd_alloc() argument
364 mm->pgd = pgd; in pgd_alloc()
366 if (preallocate_pmds(mm, pmds) != 0) in pgd_alloc()
369 if (paravirt_pgd_alloc(mm) != 0) in pgd_alloc()
379 pgd_ctor(mm, pgd); in pgd_alloc()
380 pgd_prepopulate_pmd(mm, pgd, pmds); in pgd_alloc()
387 free_pmds(mm, pmds); in pgd_alloc()
394 void pgd_free(struct mm_struct *mm, pgd_t *pgd) in pgd_free() argument
396 pgd_mop_up_pmds(mm, pgd); in pgd_free()
398 paravirt_pgd_free(mm, pgd); in pgd_free()