Home
last modified time | relevance | path

Searched refs:vm_mm (Results 1 – 25 of 159) sorted by relevance

1234567

/linux/arch/powerpc/mm/book3s64/
H A Dradix_hugetlbpage.c16 radix__flush_tlb_page_psize(vma->vm_mm, vmaddr, psize); in radix__flush_hugetlb_page()
25 radix__local_flush_tlb_page_psize(vma->vm_mm, vmaddr, psize); in radix__local_flush_hugetlb_page()
39 radix__flush_tlb_pwc_range_psize(vma->vm_mm, start, end, psize); in radix__flush_hugetlb_tlb_range()
41 radix__flush_tlb_range_psize(vma->vm_mm, start, end, psize); in radix__flush_hugetlb_tlb_range()
42 mmu_notifier_arch_invalidate_secondary_tlbs(vma->vm_mm, start, end); in radix__flush_hugetlb_tlb_range()
49 struct mm_struct *mm = vma->vm_mm; in radix__huge_ptep_modify_prot_commit()
62 set_huge_pte_at(vma->vm_mm, addr, ptep, pte, psize); in radix__huge_ptep_modify_prot_commit()
H A Dpgtable.c54 assert_spin_locked(pmd_lockptr(vma->vm_mm, pmdp)); in pmdp_set_access_flags()
74 assert_spin_locked(pud_lockptr(vma->vm_mm, pudp)); in pudp_set_access_flags()
92 return __pmdp_test_and_clear_young(vma->vm_mm, address, pmdp); in pmdp_test_and_clear_young()
98 return __pudp_test_and_clear_young(vma->vm_mm, address, pudp); in pudp_test_and_clear_young()
174 old_pmd = pmd_hugepage_update(vma->vm_mm, address, pmdp, _PAGE_PRESENT, _PAGE_INVALID); in pmdp_invalidate()
186 pmd = pmdp_huge_get_and_clear(vma->vm_mm, addr, pmdp); in pmdp_huge_get_and_clear_full()
205 pud = pudp_huge_get_and_clear(vma->vm_mm, addr, pudp); in pudp_huge_get_and_clear_full()
531 pte_val = pte_update(vma->vm_mm, addr, ptep, _PAGE_PRESENT, _PAGE_INVALID, 0); in ptep_modify_prot_start()
543 set_pte_at(vma->vm_mm, addr, ptep, pte); in ptep_modify_prot_commit()
/linux/arch/mips/mm/
H A Dtlb-r3k.c71 struct mm_struct *mm = vma->vm_mm; in local_flush_tlb_range()
152 if (cpu_context(cpu, vma->vm_mm) != 0) { in local_flush_tlb_page()
157 printk("[tlbpage<%lu,0x%08lx>]", cpu_context(cpu, vma->vm_mm), page); in local_flush_tlb_page()
159 newpid = cpu_context(cpu, vma->vm_mm) & asid_mask; in local_flush_tlb_page()
188 if (current->active_mm != vma->vm_mm) in __update_tlb()
194 if ((pid != (cpu_context(cpu, vma->vm_mm) & asid_mask)) || (cpu_context(cpu, vma->vm_mm) == 0)) { in __update_tlb()
196 (cpu_context(cpu, vma->vm_mm)), pid); in __update_tlb()
H A Dtlb-r4k.c109 struct mm_struct *mm = vma->vm_mm; in local_flush_tlb_range()
215 if (cpu_context(cpu, vma->vm_mm) != 0) { in local_flush_tlb_page()
227 write_c0_memorymapid(cpu_asid(cpu, vma->vm_mm)); in local_flush_tlb_page()
229 write_c0_entryhi(page | cpu_asid(cpu, vma->vm_mm)); in local_flush_tlb_page()
306 if (current->active_mm != vma->vm_mm) in __update_tlb()
319 pgdp = pgd_offset(vma->vm_mm, address); in __update_tlb()
/linux/arch/sh/mm/
H A Dtlbflush_32.c19 if (vma->vm_mm && cpu_context(cpu, vma->vm_mm) != NO_CONTEXT) { in local_flush_tlb_page()
24 asid = cpu_asid(cpu, vma->vm_mm); in local_flush_tlb_page()
28 if (vma->vm_mm != current->mm) { in local_flush_tlb_page()
42 struct mm_struct *mm = vma->vm_mm; in local_flush_tlb_range()
/linux/arch/riscv/mm/
H A Dtlbflush.c131 __flush_tlb_range(mm_cpumask(vma->vm_mm), get_mm_asid(vma->vm_mm), in flush_tlb_page()
164 __flush_tlb_range(mm_cpumask(vma->vm_mm), get_mm_asid(vma->vm_mm), in flush_tlb_range()
178 __flush_tlb_range(mm_cpumask(vma->vm_mm), get_mm_asid(vma->vm_mm), in flush_pmd_tlb_range()
H A Dpgtable.c13 __set_pte_at(vma->vm_mm, ptep, entry); in ptep_set_access_flags()
129 pmd_t pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); in pmdp_collapse_flush()
141 flush_tlb_mm(vma->vm_mm); in pmdp_collapse_flush()
/linux/Documentation/translations/zh_CN/core-api/
H A Dcachetlb.rst58 这个接口必须确保以前对‘start’到‘end-1’范围内的地址空间‘vma->vm_mm
71 踪进程的mmap区域的支持结构体,地址空间可以通过vma->vm_mm获得。另
76 “vma->vm_mm”的页表修改对cpu来说是可见的。也就是说,在运行后,TLB
77 中不会有虚拟地址‘addr’的‘vma->vm_mm’的页表项。
85 软件页表中,在地址空间“vma->vm_mm”的虚拟地址“地址”处,现在存在
141 后,在“start”到“end-1”范围内的虚拟地址的“vma->vm_mm”的缓存中
154 vma->vm_mm获得。另外,我们可以通过测试(vma->vm_flags &
161 在运行之后,对于虚拟地址‘addr’的‘vma->vm_mm’,在缓存中不会
/linux/arch/csky/kernel/
H A Dvdso.c91 if (vma->vm_mm && (vma->vm_start == (long)vma->vm_mm->context.vdso)) in arch_vma_name()
93 if (vma->vm_mm && (vma->vm_start == in arch_vma_name()
94 (long)vma->vm_mm->context.vdso + PAGE_SIZE)) in arch_vma_name()
/linux/arch/arc/mm/
H A Dtlb.c222 local_flush_tlb_mm(vma->vm_mm); in local_flush_tlb_range()
235 if (asid_mm(vma->vm_mm, cpu) != MM_CTXT_NO_ASID) { in local_flush_tlb_range()
237 tlb_entry_erase(start | hw_pid(vma->vm_mm, cpu)); in local_flush_tlb_range()
288 if (asid_mm(vma->vm_mm, cpu) != MM_CTXT_NO_ASID) { in local_flush_tlb_page()
289 tlb_entry_erase((page & PAGE_MASK) | hw_pid(vma->vm_mm, cpu)); in local_flush_tlb_page()
351 on_each_cpu_mask(mm_cpumask(vma->vm_mm), ipi_flush_tlb_page, &ta, 1); in flush_tlb_page()
363 on_each_cpu_mask(mm_cpumask(vma->vm_mm), ipi_flush_tlb_range, &ta, 1); in flush_tlb_range()
376 on_each_cpu_mask(mm_cpumask(vma->vm_mm), ipi_flush_pmd_tlb_range, &ta, 1); in flush_pmd_tlb_range()
425 if (current->active_mm != vma->vm_mm) in create_tlb()
547 if (likely(asid_mm(vma->vm_mm, cpu) != MM_CTXT_NO_ASID)) { in local_flush_pmd_tlb_range()
[all …]
/linux/arch/arm/mm/
H A Dfault-armv.c57 set_pte_at(vma->vm_mm, address, ptep, entry); in do_adjust_pte()
99 pgd = pgd_offset(vma->vm_mm, address); in adjust_pte()
120 pte = pte_offset_map_nolock(vma->vm_mm, pmd, address, &ptl); in adjust_pte()
138 struct mm_struct *mm = vma->vm_mm; in make_coherent()
158 if (mpnt->vm_mm != mm || mpnt == vma) in make_coherent()
/linux/mm/
H A Dmremap.c141 struct mm_struct *mm = vma->vm_mm; in move_ptes()
186 flush_tlb_batched_pending(vma->vm_mm); in move_ptes()
240 struct mm_struct *mm = vma->vm_mm; in move_normal_pmd()
275 old_ptl = pmd_lock(vma->vm_mm, old_pmd); in move_normal_pmd()
308 struct mm_struct *mm = vma->vm_mm; in move_normal_pud()
324 old_ptl = pud_lock(vma->vm_mm, old_pud); in move_normal_pud()
357 struct mm_struct *mm = vma->vm_mm; in move_huge_pud()
371 old_ptl = pud_lock(vma->vm_mm, old_pud); in move_huge_pud()
584 old_pud = get_old_pud(vma->vm_mm, old_addr); in move_page_tables()
631 if (pte_alloc(new_vma->vm_mm, new_pmd)) in move_page_tables()
[all …]
H A Dmemory.c494 pgd_t *pgd = pgd_offset(vma->vm_mm, addr); in print_bad_pte()
745 set_pte_at(vma->vm_mm, address, ptep, pte); in restore_exclusive_pte()
931 set_pte_at(dst_vma->vm_mm, addr, dst_pte, pte); in copy_present_page()
939 struct mm_struct *src_mm = src_vma->vm_mm; in __copy_present_ptes()
955 set_ptes(dst_vma->vm_mm, addr, dst_pte, pte, nr); in __copy_present_ptes()
1070 struct mm_struct *dst_mm = dst_vma->vm_mm; in copy_pte_range()
1071 struct mm_struct *src_mm = src_vma->vm_mm; in copy_pte_range()
1215 struct mm_struct *dst_mm = dst_vma->vm_mm; in copy_pmd_range()
1216 struct mm_struct *src_mm = src_vma->vm_mm; in copy_pmd_range()
1252 struct mm_struct *dst_mm = dst_vma->vm_mm; in copy_pud_range()
5029 struct mm_struct *vm_mm = vma->vm_mm; do_fault() local
[all...]
H A Dpgtable-generic.c74 set_pte_at(vma->vm_mm, address, ptep, entry); in ptep_set_access_flags()
97 struct mm_struct *mm = (vma)->vm_mm; in ptep_clear_flush()
116 set_pmd_at(vma->vm_mm, address, pmdp, entry); in pmdp_set_access_flags()
144 pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); in pmdp_huge_clear_flush()
157 pud = pudp_huge_get_and_clear(vma->vm_mm, address, pudp); in pudp_huge_clear_flush()
229 pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); in pmdp_collapse_flush()
H A Dhuge_memory.c97 if (!vma->vm_mm) /* vdso */ in __thp_vma_allowable_orders()
106 test_bit(MMF_DISABLE_THP, &vma->vm_mm->flags)) in __thp_vma_allowable_orders()
155 !enforce_sysfs, vma->vm_mm, vm_flags) in __thp_vma_allowable_orders()
929 if (mem_cgroup_charge(folio, vma->vm_mm, gfp)) { in __do_huge_pmd_anonymous_page()
939 pgtable = pte_alloc_one(vma->vm_mm); in __do_huge_pmd_anonymous_page()
953 vmf->ptl = pmd_lock(vma->vm_mm, vmf->pmd); in __do_huge_pmd_anonymous_page()
959 ret = check_stable_address_space(vma->vm_mm); in __do_huge_pmd_anonymous_page()
967 pte_free(vma->vm_mm, pgtable); in __do_huge_pmd_anonymous_page()
977 pgtable_trans_huge_deposit(vma->vm_mm, vmf->pmd, pgtable); in __do_huge_pmd_anonymous_page()
978 set_pmd_at(vma->vm_mm, hadd in __do_huge_pmd_anonymous_page()
[all...]
H A Dmprotect.c97 pte = pte_offset_map_lock(vma->vm_mm, pmd, addr, &ptl); in change_pte_range()
103 atomic_read(&vma->vm_mm->mm_users) == 1) in change_pte_range()
106 flush_tlb_batched_pending(vma->vm_mm); in change_pte_range()
248 pte_clear(vma->vm_mm, addr, pte); in change_pte_range()
262 set_pte_at(vma->vm_mm, addr, pte, newpte); in change_pte_range()
283 set_pte_at(vma->vm_mm, addr, pte, in change_pte_range()
335 if (pte_alloc(vma->vm_mm, pmd)) \
350 low##_t *p = low##_alloc(vma->vm_mm, high, addr); \
389 vma->vm_mm, addr, end); in change_pmd_range()
491 struct mm_struct *mm = vma->vm_mm; in change_protection_range()
[all …]
H A Dmadvise.c96 mmap_assert_locked(vma->vm_mm); in anon_vma_name()
142 struct mm_struct *mm = vma->vm_mm; in madvise_update_vma()
186 ptep = pte_offset_map_lock(vma->vm_mm, pmd, addr, &ptl); in swapin_walk_pmd_entry()
265 struct mm_struct *mm = vma->vm_mm; in madvise_willneed()
272 walk_page_range(vma->vm_mm, start, end, &swapin_walk_ops, vma); in madvise_willneed()
584 struct mm_struct *mm = vma->vm_mm; in madvise_cold()
617 struct mm_struct *mm = vma->vm_mm; in madvise_pageout()
792 struct mm_struct *mm = vma->vm_mm; in madvise_free_single_vma()
815 walk_page_range(vma->vm_mm, range.start, range.end, in madvise_free_single_vma()
885 struct mm_struct *mm = vma->vm_mm; in madvise_dontneed_free()
[all …]
/linux/arch/arm/kernel/
H A Dsmp_tlb.c202 on_each_cpu_mask(mm_cpumask(vma->vm_mm), ipi_flush_tlb_page, in flush_tlb_page()
206 broadcast_tlb_mm_a15_erratum(vma->vm_mm); in flush_tlb_page()
228 on_each_cpu_mask(mm_cpumask(vma->vm_mm), ipi_flush_tlb_range, in flush_tlb_range()
232 broadcast_tlb_mm_a15_erratum(vma->vm_mm); in flush_tlb_range()
/linux/arch/m68k/include/asm/
H A Dtlbflush.h86 if (vma->vm_mm == current->active_mm) in flush_tlb_page()
93 if (vma->vm_mm == current->active_mm) in flush_tlb_range()
171 sun3_put_context(vma->vm_mm->context); in flush_tlb_page()
188 struct mm_struct *mm = vma->vm_mm; in flush_tlb_range()
/linux/arch/loongarch/mm/
H A Dtlb.c60 struct mm_struct *mm = vma->vm_mm; in local_flush_tlb_range()
117 if (asid_valid(vma->vm_mm, cpu)) { in local_flush_tlb_page()
120 newpid = cpu_asid(cpu, vma->vm_mm); in local_flush_tlb_page()
124 cpumask_clear_cpu(cpu, mm_cpumask(vma->vm_mm)); in local_flush_tlb_page()
177 if (current->active_mm != vma->vm_mm) in __update_tlb()
/linux/arch/parisc/include/asm/
H A Dtlbflush.h20 __flush_tlb_range((vma)->vm_mm->context.space_id, start, end)
67 purge_tlb_entries(vma->vm_mm, addr); in flush_tlb_page()
/linux/arch/s390/include/asm/
H A Dhugetlb.h60 return huge_ptep_get_and_clear(vma->vm_mm, address, ptep); in huge_ptep_clear_flush()
69 huge_ptep_get_and_clear(vma->vm_mm, addr, ptep); in huge_ptep_set_access_flags()
70 __set_huge_pte_at(vma->vm_mm, addr, ptep, pte); in huge_ptep_set_access_flags()
/linux/arch/hexagon/mm/
H A Dvm_tlb.c29 struct mm_struct *mm = vma->vm_mm; in flush_tlb_range()
69 struct mm_struct *mm = vma->vm_mm; in flush_tlb_page()
/linux/arch/sh/kernel/vsyscall/
H A Dvsyscall.c89 if (vma->vm_mm && vma->vm_start == (long)vma->vm_mm->context.vdso) in arch_vma_name()
/linux/arch/hexagon/kernel/
H A Dvdso.c86 if (vma->vm_mm && vma->vm_start == (long)vma->vm_mm->context.vdso) in arch_vma_name()

1234567