Home
last modified time | relevance | path

Searched refs:mm (Results 1 – 25 of 1508) sorted by relevance

12345678910>>...61

/linux-6.15/include/linux/
H A Dmmap_lock.h128 down_write(&mm->mmap_lock); in mmap_write_lock()
129 mm_lock_seqcount_begin(mm); in mmap_write_lock()
137 mm_lock_seqcount_begin(mm); in mmap_write_lock_nested()
148 mm_lock_seqcount_begin(mm); in mmap_write_lock_killable()
163 mmap_assert_write_locked(mm); in vma_end_write_all()
164 mm_lock_seqcount_end(mm); in vma_end_write_all()
170 vma_end_write_all(mm); in mmap_write_unlock()
171 up_write(&mm->mmap_lock); in mmap_write_unlock()
177 vma_end_write_all(mm); in mmap_write_downgrade()
184 down_read(&mm->mmap_lock); in mmap_read_lock()
[all …]
H A Dmmu_notifier.h89 struct mm_struct *mm);
101 struct mm_struct *mm,
111 struct mm_struct *mm,
122 struct mm_struct *mm,
199 struct mm_struct *mm,
231 struct mm_struct *mm; member
251 struct mm_struct *mm; member
263 struct mm_struct *mm; member
283 mmap_write_lock(mm); in mmu_notifier_get()
285 mmap_write_unlock(mm); in mmu_notifier_get()
[all …]
H A Dpage_table_check.h17 void __page_table_check_pte_clear(struct mm_struct *mm, pte_t pte);
18 void __page_table_check_pmd_clear(struct mm_struct *mm, pmd_t pmd);
19 void __page_table_check_pud_clear(struct mm_struct *mm, pud_t pud);
24 void __page_table_check_pte_clear_range(struct mm_struct *mm,
49 __page_table_check_pte_clear(mm, pte); in page_table_check_pte_clear()
57 __page_table_check_pmd_clear(mm, pmd); in page_table_check_pmd_clear()
65 __page_table_check_pud_clear(mm, pud); in page_table_check_pud_clear()
74 __page_table_check_ptes_set(mm, ptep, pte, nr); in page_table_check_ptes_set()
83 __page_table_check_pmd_set(mm, pmdp, pmd); in page_table_check_pmd_set()
92 __page_table_check_pud_set(mm, pudp, pud); in page_table_check_pud_set()
[all …]
H A Dksm.h22 int ksm_enable_merge_any(struct mm_struct *mm);
24 int ksm_disable(struct mm_struct *mm);
26 int __ksm_enter(struct mm_struct *mm);
27 void __ksm_exit(struct mm_struct *mm);
40 atomic_long_inc(&mm->ksm_zero_pages); in ksm_map_zero_page()
47 atomic_long_dec(&mm->ksm_zero_pages); in ksm_might_unmap_zero_page()
60 __ksm_enter(mm); in ksm_fork()
65 if (test_bit(MMF_VM_MERGE_ANY, &mm->flags)) in ksm_execve()
66 return __ksm_enter(mm); in ksm_execve()
73 if (test_bit(MMF_VM_MERGEABLE, &mm->flags)) in ksm_exit()
[all …]
/linux-6.15/arch/x86/include/asm/
H A Dmmu_context.h57 mm->context.ldt = NULL; in init_new_context_ldt()
66 struct mm_struct *mm) in ldt_dup_context() argument
170 mm_init_global_asid(mm); in init_new_context()
171 mm_reset_untag_mask(mm); in init_new_context()
172 init_new_context_ldt(mm); in init_new_context()
179 destroy_context_ldt(mm); in destroy_context()
180 mm_free_global_asid(mm); in destroy_context()
211 struct mm_struct *mm) in arch_dup_pkeys() argument
226 paravirt_enter_mmap(mm); in arch_dup_mmap()
227 dup_lam(oldmm, mm); in arch_dup_mmap()
[all …]
/linux-6.15/drivers/gpu/drm/
H A Ddrm_buddy.c260 mm->free_list = kmalloc_array(mm->max_order + 1, in drm_buddy_init()
271 mm->roots = kmalloc_array(mm->n_roots, in drm_buddy_init()
312 drm_block_free(mm, mm->roots[i]); in drm_buddy_init()
343 drm_block_free(mm, mm->roots[i]); in drm_buddy_fini()
349 WARN_ON(mm->avail != mm->size); in drm_buddy_fini()
417 mm->avail += drm_buddy_block_size(mm, block); in drm_buddy_free_block()
732 mm->avail -= drm_buddy_block_size(mm, block); in __alloc_range()
924 mm->avail += drm_buddy_block_size(mm, block); in drm_buddy_block_trim()
936 mm->avail -= drm_buddy_block_size(mm, block); in drm_buddy_block_trim()
1080 mm->avail -= drm_buddy_block_size(mm, block); in drm_buddy_alloc_blocks()
[all …]
/linux-6.15/arch/powerpc/include/asm/
H A Dmmu_context.h122 atomic_inc(&mm->context.active_cpus); in inc_mm_active_cpus()
128 atomic_dec(&mm->context.active_cpus); in dec_mm_active_cpus()
139 inc_mm_active_cpus(mm); in mm_context_add_copro()
165 radix__flush_all_mm(mm); in mm_context_remove_copro()
172 dec_mm_active_cpus(mm); in mm_context_remove_copro()
190 mm_context_add_copro(mm); in mm_context_add_vas_window()
197 mm_context_remove_copro(mm); in mm_context_remove_vas_window()
272 #define pkey_mm_init(mm) argument
273 #define arch_dup_pkeys(oldmm, mm) argument
283 struct mm_struct *mm) in arch_dup_mmap() argument
[all …]
/linux-6.15/drivers/gpu/drm/tests/
H A Ddrm_buddy_test.c31 struct drm_buddy mm; in drm_test_buddy_alloc_range_bias() local
166 drm_buddy_fini(&mm); in drm_test_buddy_alloc_range_bias()
226 drm_buddy_fini(&mm); in drm_test_buddy_alloc_range_bias()
258 drm_buddy_fini(&mm); in drm_test_buddy_alloc_range_bias()
268 struct drm_buddy mm; in drm_test_buddy_alloc_clear() local
333 drm_buddy_fini(&mm); in drm_test_buddy_alloc_clear()
384 drm_buddy_fini(&mm); in drm_test_buddy_alloc_clear()
410 drm_buddy_fini(&mm); in drm_test_buddy_alloc_clear()
735 size = mm.chunk_size << mm.max_order; in drm_test_buddy_alloc_limit()
747 BIT_ULL(mm.max_order) * mm.chunk_size, in drm_test_buddy_alloc_limit()
[all …]
/linux-6.15/arch/s390/include/asm/
H A Dpgalloc.h42 if (addr + len > mm->context.asce_limit && in check_asce_limit()
44 rc = crst_table_upgrade(mm, addr + len); in check_asce_limit()
65 if (mm_p4d_folded(mm)) in p4d_free()
86 if (mm_pud_folded(mm)) in pud_free()
101 crst_table_free(mm, table); in pmd_alloc_one()
109 if (mm_pmd_folded(mm)) in pmd_free()
153 #define pmd_populate_kernel(mm, pmd, pte) pmd_populate(mm, pmd, pte) argument
158 #define pte_alloc_one_kernel(mm) ((pte_t *)page_table_alloc(mm)) argument
159 #define pte_alloc_one(mm) ((pte_t *)page_table_alloc(mm)) argument
161 #define pte_free_kernel(mm, pte) page_table_free(mm, (unsigned long *) pte) argument
[all …]
H A Dmmu_context.h20 struct mm_struct *mm) in init_new_context() argument
24 spin_lock_init(&mm->context.lock); in init_new_context()
29 mm->context.gmap_asce = 0; in init_new_context()
30 mm->context.flush_mm = 0; in init_new_context()
32 mm->context.has_pgste = 0; in init_new_context()
33 mm->context.uses_skeys = 0; in init_new_context()
34 mm->context.uses_cmm = 0; in init_new_context()
64 mm->context.asce = __pa(mm->pgd) | _ASCE_TABLE_LENGTH | in init_new_context()
101 struct mm_struct *mm = tsk->mm; in finish_arch_post_lock_switch() local
103 if (mm) { in finish_arch_post_lock_switch()
[all …]
/linux-6.15/arch/m68k/include/asm/
H A Dmmu_context.h45 mm->context = ctx; in get_mmu_context()
46 context_mm[ctx] = mm; in get_mmu_context()
52 #define init_new_context(tsk, mm) (((mm)->context = NO_CONTEXT), 0) argument
85 struct mm_struct *mm) in activate_mm() argument
87 get_mmu_context(mm); in activate_mm()
88 set_context(mm->context, mm->pgd); in activate_mm()
115 mm = &init_mm; in load_ksp_mmu()
118 mm = task->mm; in load_ksp_mmu()
121 if (!mm) in load_ksp_mmu()
190 mm->context = get_free_context(mm); in get_mmu_context()
[all …]
/linux-6.15/mm/
H A Dmmu_notifier.c269 .mm = mm, in mn_itree_release()
659 mmgrab(mm); in __mmu_notifier_register()
660 subscription->mm = mm; in __mmu_notifier_register()
835 mmdrop(mm); in mmu_notifier_unregister()
843 struct mm_struct *mm = subscription->mm; in mmu_notifier_free_rcu() local
847 mmdrop(mm); in mmu_notifier_free_rcu()
874 struct mm_struct *mm = subscription->mm; in mmu_notifier_put() local
895 interval_sub->mm = mm; in __mmu_interval_notifier_insert()
913 mmgrab(mm); in __mmu_interval_notifier_insert()
1040 struct mm_struct *mm = interval_sub->mm; in mmu_interval_notifier_remove() local
[all …]
H A Dmmap.c111 return mlock_future_ok(current->mm, current->mm->def_flags, len) in check_brk_limits()
118 struct mm_struct *mm = current->mm; in SYSCALL_DEFINE1() local
153 mm->end_data, mm->start_data)) in SYSCALL_DEFINE1()
159 mm->brk = brk; in SYSCALL_DEFINE1()
175 mm->brk = brk; in SYSCALL_DEFINE1()
200 mm->brk = brk; in SYSCALL_DEFINE1()
343 struct mm_struct *mm = current->mm; in do_mmap() local
695 struct mm_struct *mm = current->mm; in generic_get_unmapped_area() local
745 struct mm_struct *mm = current->mm; in generic_get_unmapped_area_topdown() local
1095 struct mm_struct *mm = current->mm; in SYSCALL_DEFINE5() local
[all …]
/linux-6.15/tools/testing/vma/
H A Dvma.c247 mm->map_count = 0; in cleanup_mm()
277 .mm = &mm, in test_simple_merge()
417 .mm = &mm, in test_merge_new()
613 .mm = &mm, in test_vma_merge_special_flags()
685 .mm = &mm, in test_vma_merge_with_close()
894 .mm = &mm, in test_vma_merge_new_with_close()
950 .mm = &mm, in test_merge_existing()
1180 .mm = &mm, in test_anon_vma_non_mergeable()
1287 .mm = &mm, in test_dup_anon_vma()
1447 .mm = &mm, in test_vmi_prealloc_fail()
[all …]
/linux-6.15/arch/powerpc/mm/book3s64/
H A Dmmu_context.c101 if (!mm->context.hash_context) in hash__init_new_context()
118 if (mm->context.id == 0) { in hash__init_new_context()
146 pkey_mm_init(mm); in hash__init_new_context()
207 mm->context.id = index; in init_new_context()
209 mm->context.pte_frag = NULL; in init_new_context()
210 mm->context.pmd_frag = NULL; in init_new_context()
212 mm_iommu_init(mm); in init_new_context()
265 frag = mm->context.pte_frag; in destroy_pagetable_cache()
269 frag = mm->context.pmd_frag; in destroy_pagetable_cache()
296 subpage_prot_free(mm); in destroy_context()
[all …]
H A Dslice.c93 vma = find_vma(mm, addr); in slice_area_is_free()
127 if (!slice_low_has_vma(mm, i)) in slice_mask_for_free()
134 if (!slice_high_has_vma(mm, i)) in slice_mask_for_free()
173 struct mm_struct *mm = parm; in slice_flush_segments() local
176 if (mm != current->active_mm) in slice_flush_segments()
252 spu_flush_all_slbs(mm); in slice_convert()
385 return slice_find_area_topdown(mm, mm->mmap_base, len, mask, psize, high_limit); in slice_find_area()
387 return slice_find_area_bottomup(mm, mm->mmap_base, len, mask, psize, high_limit); in slice_find_area()
436 struct mm_struct *mm = current->mm; in slice_get_unmapped_area() local
467 BUG_ON(mm->task_size == 0); in slice_get_unmapped_area()
[all …]
/linux-6.15/arch/sparc/include/asm/
H A Dmmu_context_64.h29 void destroy_context(struct mm_struct *mm);
40 __tsb_context_switch(__pa(mm->pgd), in tsb_context_switch_ctx()
55 void tsb_grow(struct mm_struct *mm,
59 void smp_tsb_sync(struct mm_struct *mm);
86 if (unlikely(mm == &init_mm)) in switch_mm()
90 ctx_valid = CTX_VALID(mm->context); in switch_mm()
92 get_new_mmu_context(mm); in switch_mm()
124 tsb_context_switch_ctx(mm, CTX_HWBITS(mm->context)); in switch_mm()
131 cpumask_set_cpu(cpu, mm_cpumask(mm)); in switch_mm()
138 #define activate_mm(active_mm, mm) switch_mm(active_mm, mm, NULL) argument
[all …]
/linux-6.15/Documentation/core-api/
H A Dmm-api.rst14 .. kernel-doc:: mm/gup.c
40 .. kernel-doc:: mm/slub.c
46 .. kernel-doc:: mm/util.c
52 .. kernel-doc:: mm/vmalloc.c
103 .. kernel-doc:: mm/memory.c
116 .. kernel-doc:: mm/util.c
119 .. kernel-doc:: mm/rmap.c
121 .. kernel-doc:: mm/mmap.c
126 .. kernel-doc:: mm/swap.c
127 .. kernel-doc:: mm/zpool.c
[all …]
/linux-6.15/arch/arm/include/asm/
H A Dmmu_context.h32 __check_vmalloc_seq(mm); in check_vmalloc_seq()
44 atomic64_set(&mm->context.id, 0); in init_new_context()
65 check_vmalloc_seq(mm); in check_and_switch_context()
75 mm->context.switch_pending = 1; in check_and_switch_context()
77 cpu_switch_mm(mm->pgd, mm); in check_and_switch_context()
85 struct mm_struct *mm = current->mm; in finish_arch_post_lock_switch() local
87 if (mm && mm->context.switch_pending) { in finish_arch_post_lock_switch()
96 mm->context.switch_pending = 0; in finish_arch_post_lock_switch()
97 cpu_switch_mm(mm->pgd, mm); in finish_arch_post_lock_switch()
144 if (mm != &init_mm) in enter_lazy_tlb()
[all …]
/linux-6.15/arch/s390/mm/
H A Dpgtable.c111 mm->context.flush_mm = 1; in ptep_flush_lazy()
178 struct mm_struct *mm) in pgste_set_key() argument
243 if (mm_has_pgste(mm)) { in ptep_xchg_start()
254 if (mm_has_pgste(mm)) { in ptep_xchg_commit()
342 if (mm_has_pgste(mm)) { in ptep_modify_prot_start()
355 if (mm_has_pgste(mm)) { in ptep_modify_prot_commit()
374 if (mm_has_pgste(mm) && mm->context.allow_gmap_hpage_1m) in pmdp_idte_local()
384 if (mm_has_pgste(mm) && mm->context.allow_gmap_hpage_1m) in pmdp_idte_global()
388 if (mm_has_pgste(mm) && mm->context.allow_gmap_hpage_1m) in pmdp_idte_global()
392 if (mm_has_pgste(mm) && mm->context.allow_gmap_hpage_1m) in pmdp_idte_global()
[all …]
/linux-6.15/arch/arm/mm/
H A Dpgd.c23 #define _pgd_alloc(mm) __pgd_alloc(mm, 2) argument
24 #define _pgd_free(mm, pgd) __pgd_free(mm, pgd) argument
129 mm_dec_nr_pmds(mm); in pgd_alloc()
169 pte_free(mm, pte); in pgd_free()
170 mm_dec_nr_ptes(mm); in pgd_free()
173 pmd_free(mm, pmd); in pgd_free()
174 mm_dec_nr_pmds(mm); in pgd_free()
177 pud_free(mm, pud); in pgd_free()
180 p4d_free(mm, p4d); in pgd_free()
199 pmd_free(mm, pmd); in pgd_free()
[all …]
/linux-6.15/include/linux/sched/
H A Dmm.h37 atomic_inc(&mm->mm_count); in mmgrab()
55 __mmdrop(mm); in mmdrop()
67 __mmdrop(mm); in __mmdrop_delayed()
77 if (atomic_dec_and_test(&mm->mm_count)) in mmdrop_sched()
83 mmdrop(mm); in mmdrop_sched()
91 mmgrab(mm); in mmgrab_lazy_tlb()
97 mmdrop(mm); in mmdrop_lazy_tlb()
110 mmdrop_sched(mm); in mmdrop_lazy_tlb_sched()
133 atomic_inc(&mm->mm_users); in mmget()
238 rcu_dereference(tsk->real_parent)->mm == tsk->mm; in in_vfork()
[all …]
/linux-6.15/arch/x86/kernel/
H A Dldt.c143 load_mm_ldt(mm); in flush_ldt()
193 if (mm->context.ldt) { in do_sanity_check()
429 on_each_cpu_mask(mm_cpumask(mm), flush_ldt, mm, true); in install_ldt()
475 free_ldt_pgtables(mm); in ldt_dup_context()
494 mm->context.ldt = NULL; in destroy_context_ldt()
499 free_ldt_pgtables(mm); in ldt_arch_exit_mmap()
504 struct mm_struct *mm = current->mm; in read_ldt() local
510 if (!mm->context.ldt) { in read_ldt()
580 struct mm_struct *mm = current->mm; in write_ldt() local
651 free_ldt_pgtables(mm); in write_ldt()
[all …]
/linux-6.15/arch/sparc/mm/
H A Dtsb.c121 struct mm_struct *mm = tb->mm; in flush_tsb_user() local
524 tsb_context_switch(mm); in tsb_grow()
528 smp_tsb_sync(mm); in tsb_grow()
545 spin_lock_init(&mm->context.lock); in init_new_context()
549 mm->context.tag_store = NULL; in init_new_context()
560 mm->context.thp_pte_count = 0; in init_new_context()
579 tsb_grow(mm, MM_TSB_HUGE, in init_new_context()
611 if (CTX_VALID(mm->context)) { in destroy_context()
619 if (mm->context.tag_store) { in destroy_context()
632 kfree(mm->context.tag_store); in destroy_context()
[all …]
/linux-6.15/arch/arm64/include/asm/
H A Dmmu_context.h61 cpu_do_switch_mm(virt_to_phys(pgd),mm); in cpu_switch_mm()
109 cpu_switch_mm(mm->pgd, mm); in cpu_uninstall_idmap()
173 #define init_new_context(tsk, mm) init_new_context(tsk, mm) argument
177 atomic64_set(&mm->context.id, 0); in init_new_context()
187 struct mm_struct *mm) in arch_dup_pkeys() argument
195 arch_dup_pkeys(oldmm, mm); in arch_dup_mmap()
211 struct mm_struct *mm) in update_saved_ttbr0() argument
218 if (mm == &init_mm) in update_saved_ttbr0()
221 ttbr = phys_to_ttbr(virt_to_phys(mm->pgd)) | ASID(mm) << 48; in update_saved_ttbr0()
227 struct mm_struct *mm) in update_saved_ttbr0() argument
[all …]

12345678910>>...61