/Linux-v5.10/mm/ |
D | userfaultfd.c | 22 struct vm_area_struct *find_dst_vma(struct mm_struct *dst_mm, in find_dst_vma() argument 32 dst_vma = find_vma(dst_mm, dst_start); in find_dst_vma() 51 static int mcopy_atomic_pte(struct mm_struct *dst_mm, in mcopy_atomic_pte() argument 99 if (mem_cgroup_charge(page, dst_mm, GFP_KERNEL)) in mcopy_atomic_pte() 110 dst_pte = pte_offset_map_lock(dst_mm, dst_pmd, dst_addr, &ptl); in mcopy_atomic_pte() 124 inc_mm_counter(dst_mm, MM_ANONPAGES); in mcopy_atomic_pte() 128 set_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); in mcopy_atomic_pte() 144 static int mfill_zeropage_pte(struct mm_struct *dst_mm, in mfill_zeropage_pte() argument 157 dst_pte = pte_offset_map_lock(dst_mm, dst_pmd, dst_addr, &ptl); in mfill_zeropage_pte() 170 set_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); in mfill_zeropage_pte() [all …]
|
D | huge_memory.c | 997 int copy_huge_pmd(struct mm_struct *dst_mm, struct mm_struct *src_mm, in copy_huge_pmd() argument 1011 pgtable = pte_alloc_one(dst_mm); in copy_huge_pmd() 1015 dst_ptl = pmd_lock(dst_mm, dst_pmd); in copy_huge_pmd() 1042 add_mm_counter(dst_mm, MM_ANONPAGES, HPAGE_PMD_NR); in copy_huge_pmd() 1043 mm_inc_nr_ptes(dst_mm); in copy_huge_pmd() 1044 pgtable_trans_huge_deposit(dst_mm, dst_pmd, pgtable); in copy_huge_pmd() 1045 set_pmd_at(dst_mm, addr, dst_pmd, pmd); in copy_huge_pmd() 1052 pte_free(dst_mm, pgtable); in copy_huge_pmd() 1067 zero_page = mm_get_huge_zero_page(dst_mm); in copy_huge_pmd() 1068 set_huge_zero_page(pgtable, dst_mm, vma, addr, dst_pmd, in copy_huge_pmd() [all …]
|
D | memory.c | 698 copy_nonpresent_pte(struct mm_struct *dst_mm, struct mm_struct *src_mm, in copy_nonpresent_pte() argument 712 if (unlikely(list_empty(&dst_mm->mmlist))) { in copy_nonpresent_pte() 714 if (list_empty(&dst_mm->mmlist)) in copy_nonpresent_pte() 715 list_add(&dst_mm->mmlist, in copy_nonpresent_pte() 771 set_pte_at(dst_mm, addr, dst_pte, pte); in copy_nonpresent_pte() 927 struct mm_struct *dst_mm = dst_vma->vm_mm; in copy_pte_range() local 941 dst_pte = pte_alloc_map_lock(dst_mm, dst_pmd, addr, &dst_ptl); in copy_pte_range() 969 entry.val = copy_nonpresent_pte(dst_mm, src_mm, in copy_pte_range() 1002 add_mm_rss_vec(dst_mm, rss); in copy_pte_range() 1033 struct mm_struct *dst_mm = dst_vma->vm_mm; in copy_pmd_range() local [all …]
|
D | shmem.c | 2360 static int shmem_mfill_atomic_pte(struct mm_struct *dst_mm, in shmem_mfill_atomic_pte() argument 2423 gfp & GFP_RECLAIM_MASK, dst_mm); in shmem_mfill_atomic_pte() 2441 dst_pte = pte_offset_map_lock(dst_mm, dst_pmd, dst_addr, &ptl); in shmem_mfill_atomic_pte() 2460 inc_mm_counter(dst_mm, mm_counter_file(page)); in shmem_mfill_atomic_pte() 2462 set_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); in shmem_mfill_atomic_pte() 2483 int shmem_mcopy_atomic_pte(struct mm_struct *dst_mm, in shmem_mcopy_atomic_pte() argument 2490 return shmem_mfill_atomic_pte(dst_mm, dst_pmd, dst_vma, in shmem_mcopy_atomic_pte() 2494 int shmem_mfill_zeropage_pte(struct mm_struct *dst_mm, in shmem_mfill_zeropage_pte() argument 2501 return shmem_mfill_atomic_pte(dst_mm, dst_pmd, dst_vma, in shmem_mfill_zeropage_pte()
|
D | hugetlb.c | 4603 int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm, in hugetlb_mcopy_atomic_pte() argument 4672 ptl = huge_pte_lockptr(h, dst_mm, dst_pte); in hugetlb_mcopy_atomic_pte() 4705 set_huge_pte_at(dst_mm, dst_addr, dst_pte, _dst_pte); in hugetlb_mcopy_atomic_pte() 4709 hugetlb_count_add(pages_per_huge_page(h), dst_mm); in hugetlb_mcopy_atomic_pte()
|
/Linux-v5.10/include/linux/ |
D | shmem_fs.h | 122 extern int shmem_mcopy_atomic_pte(struct mm_struct *dst_mm, pmd_t *dst_pmd, 127 extern int shmem_mfill_zeropage_pte(struct mm_struct *dst_mm, 132 #define shmem_mcopy_atomic_pte(dst_mm, dst_pte, dst_vma, dst_addr, \ argument 134 #define shmem_mfill_zeropage_pte(dst_mm, dst_pmd, dst_vma, \ argument
|
D | userfaultfd_k.h | 37 extern ssize_t mcopy_atomic(struct mm_struct *dst_mm, unsigned long dst_start, 40 extern ssize_t mfill_zeropage(struct mm_struct *dst_mm, 44 extern int mwriteprotect_range(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 | 137 int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm, pte_t *dst_pte, 311 static inline int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm, in hugetlb_mcopy_atomic_pte() argument
|
/Linux-v5.10/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_ttm.c | 361 struct drm_mm_node *src_mm, *dst_mm; in amdgpu_ttm_copy_mem_to_mem() local 381 dst_mm = amdgpu_find_mm_node(dst->mem, &dst_offset); in amdgpu_ttm_copy_mem_to_mem() 382 dst_node_size = (dst_mm->size << PAGE_SHIFT) - dst_offset; in amdgpu_ttm_copy_mem_to_mem() 384 dst_mm = NULL; in amdgpu_ttm_copy_mem_to_mem() 411 r = amdgpu_ttm_map_buffer(dst->bo, dst->mem, dst_mm, in amdgpu_ttm_copy_mem_to_mem() 440 ++dst_mm; in amdgpu_ttm_copy_mem_to_mem() 441 dst_node_size = dst_mm->size << PAGE_SHIFT; in amdgpu_ttm_copy_mem_to_mem()
|