/Linux-v5.4/mm/ |
D | userfaultfd.c | 21 static int mcopy_atomic_pte(struct mm_struct *dst_mm, in mcopy_atomic_pte() argument 69 if (mem_cgroup_try_charge(page, dst_mm, GFP_KERNEL, &memcg, false)) in mcopy_atomic_pte() 76 dst_pte = pte_offset_map_lock(dst_mm, dst_pmd, dst_addr, &ptl); in mcopy_atomic_pte() 90 inc_mm_counter(dst_mm, MM_ANONPAGES); in mcopy_atomic_pte() 95 set_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); in mcopy_atomic_pte() 112 static int mfill_zeropage_pte(struct mm_struct *dst_mm, in mfill_zeropage_pte() argument 125 dst_pte = pte_offset_map_lock(dst_mm, dst_pmd, dst_addr, &ptl); in mfill_zeropage_pte() 138 set_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); in mfill_zeropage_pte() 173 static __always_inline ssize_t __mcopy_atomic_hugetlb(struct mm_struct *dst_mm, in __mcopy_atomic_hugetlb() argument 200 up_read(&dst_mm->mmap_sem); in __mcopy_atomic_hugetlb() [all …]
|
D | huge_memory.c | 976 int copy_huge_pmd(struct mm_struct *dst_mm, struct mm_struct *src_mm, in copy_huge_pmd() argument 990 pgtable = pte_alloc_one(dst_mm); in copy_huge_pmd() 994 dst_ptl = pmd_lock(dst_mm, dst_pmd); in copy_huge_pmd() 1013 add_mm_counter(dst_mm, MM_ANONPAGES, HPAGE_PMD_NR); in copy_huge_pmd() 1014 mm_inc_nr_ptes(dst_mm); in copy_huge_pmd() 1015 pgtable_trans_huge_deposit(dst_mm, dst_pmd, pgtable); in copy_huge_pmd() 1016 set_pmd_at(dst_mm, addr, dst_pmd, pmd); in copy_huge_pmd() 1023 pte_free(dst_mm, pgtable); in copy_huge_pmd() 1038 zero_page = mm_get_huge_zero_page(dst_mm); in copy_huge_pmd() 1039 set_huge_zero_page(pgtable, dst_mm, vma, addr, dst_pmd, in copy_huge_pmd() [all …]
|
D | memory.c | 678 copy_one_pte(struct mm_struct *dst_mm, struct mm_struct *src_mm, in copy_one_pte() argument 695 if (unlikely(list_empty(&dst_mm->mmlist))) { in copy_one_pte() 697 if (list_empty(&dst_mm->mmlist)) in copy_one_pte() 698 list_add(&dst_mm->mmlist, in copy_one_pte() 780 set_pte_at(dst_mm, addr, dst_pte, pte); in copy_one_pte() 784 static int copy_pte_range(struct mm_struct *dst_mm, struct mm_struct *src_mm, in copy_pte_range() argument 798 dst_pte = pte_alloc_map_lock(dst_mm, dst_pmd, addr, &dst_ptl); in copy_pte_range() 823 entry.val = copy_one_pte(dst_mm, src_mm, dst_pte, src_pte, in copy_pte_range() 833 add_mm_rss_vec(dst_mm, rss); in copy_pte_range() 847 static inline int copy_pmd_range(struct mm_struct *dst_mm, struct mm_struct *src_mm, in copy_pmd_range() argument [all …]
|
D | shmem.c | 2300 static int shmem_mfill_atomic_pte(struct mm_struct *dst_mm, in shmem_mfill_atomic_pte() argument 2363 ret = mem_cgroup_try_charge_delay(page, dst_mm, gfp, &memcg, false); in shmem_mfill_atomic_pte() 2388 dst_pte = pte_offset_map_lock(dst_mm, dst_pmd, dst_addr, &ptl); in shmem_mfill_atomic_pte() 2407 inc_mm_counter(dst_mm, mm_counter_file(page)); in shmem_mfill_atomic_pte() 2409 set_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); in shmem_mfill_atomic_pte() 2432 int shmem_mcopy_atomic_pte(struct mm_struct *dst_mm, in shmem_mcopy_atomic_pte() argument 2439 return shmem_mfill_atomic_pte(dst_mm, dst_pmd, dst_vma, in shmem_mcopy_atomic_pte() 2443 int shmem_mfill_zeropage_pte(struct mm_struct *dst_mm, in shmem_mfill_zeropage_pte() argument 2450 return shmem_mfill_atomic_pte(dst_mm, dst_pmd, dst_vma, in shmem_mfill_zeropage_pte()
|
D | hugetlb.c | 4211 int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm, in hugetlb_mcopy_atomic_pte() argument 4280 ptl = huge_pte_lockptr(h, dst_mm, dst_pte); in hugetlb_mcopy_atomic_pte() 4313 set_huge_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); in hugetlb_mcopy_atomic_pte() 4317 hugetlb_count_add(pages_per_huge_page(h), dst_mm); in hugetlb_mcopy_atomic_pte()
|
/Linux-v5.4/include/linux/ |
D | shmem_fs.h | 126 extern int shmem_mcopy_atomic_pte(struct mm_struct *dst_mm, pmd_t *dst_pmd, 131 extern int shmem_mfill_zeropage_pte(struct mm_struct *dst_mm, 136 #define shmem_mcopy_atomic_pte(dst_mm, dst_pte, dst_vma, dst_addr, \ argument 138 #define shmem_mfill_zeropage_pte(dst_mm, dst_pmd, dst_vma, \ argument
|
D | userfaultfd_k.h | 35 extern ssize_t mcopy_atomic(struct mm_struct *dst_mm, unsigned long dst_start, 38 extern ssize_t mfill_zeropage(struct mm_struct *dst_mm,
|
D | huge_mm.h | 11 extern int copy_huge_pmd(struct mm_struct *dst_mm, struct mm_struct *src_mm, 15 extern int copy_huge_pud(struct mm_struct *dst_mm, struct mm_struct *src_mm,
|
D | hugetlb.h | 92 int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm, pte_t *dst_pte, 186 #define hugetlb_mcopy_atomic_pte(dst_mm, dst_pte, dst_vma, dst_addr, \ argument
|
/Linux-v5.4/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_ttm.c | 310 struct drm_mm_node *src_mm, *dst_mm; in amdgpu_ttm_copy_mem_to_mem() local 329 dst_mm = amdgpu_find_mm_node(dst->mem, &dst->offset); in amdgpu_ttm_copy_mem_to_mem() 330 dst_node_start = amdgpu_mm_node_addr(dst->bo, dst_mm, dst->mem) + in amdgpu_ttm_copy_mem_to_mem() 332 dst_node_size = (dst_mm->size << PAGE_SHIFT) - dst->offset; in amdgpu_ttm_copy_mem_to_mem() 401 dst_node_start = amdgpu_mm_node_addr(dst->bo, ++dst_mm, in amdgpu_ttm_copy_mem_to_mem() 403 dst_node_size = (dst_mm->size << PAGE_SHIFT); in amdgpu_ttm_copy_mem_to_mem()
|