Searched refs:mm (Results 26 - 50 of 2900) sorted by relevance

1234567891011>>

/linux-master/include/linux/
H A Dmmu_notifier.h40 * that the mm refcount is zero and the range is no longer accessible.
66 * Called either by mmu_notifier_unregister or when the mm is
69 * methods (the ones invoked outside the mm context) and it
74 * tsk->mm == mm exits.
81 * last thread of this mm quits, you've also to be sure that
89 struct mm_struct *mm);
101 struct mm_struct *mm,
111 struct mm_struct *mm,
122 struct mm_struct *mm,
240 struct mm_struct *mm; member in struct:mmu_notifier
260 struct mm_struct *mm; member in struct:mmu_interval_notifier
272 struct mm_struct *mm; member in struct:mmu_notifier_range
280 mm_has_notifiers(struct mm_struct *mm) argument
288 mmu_notifier_get(const struct mmu_notifier_ops *ops, struct mm_struct *mm) argument
410 mmu_notifier_release(struct mm_struct *mm) argument
416 mmu_notifier_clear_flush_young(struct mm_struct *mm, unsigned long start, unsigned long end) argument
425 mmu_notifier_clear_young(struct mm_struct *mm, unsigned long start, unsigned long end) argument
434 mmu_notifier_test_young(struct mm_struct *mm, unsigned long address) argument
442 mmu_notifier_change_pte(struct mm_struct *mm, unsigned long address, pte_t pte) argument
493 mmu_notifier_arch_invalidate_secondary_tlbs(struct mm_struct *mm, unsigned long start, unsigned long end) argument
500 mmu_notifier_subscriptions_init(struct mm_struct *mm) argument
505 mmu_notifier_subscriptions_destroy(struct mm_struct *mm) argument
512 mmu_notifier_range_init(struct mmu_notifier_range *range, enum mmu_notifier_event event, unsigned flags, struct mm_struct *mm, unsigned long start, unsigned long end) argument
526 mmu_notifier_range_init_owner( struct mmu_notifier_range *range, enum mmu_notifier_event event, unsigned int flags, struct mm_struct *mm, unsigned long start, unsigned long end, void *owner) argument
631 mm_has_notifiers(struct mm_struct *mm) argument
636 mmu_notifier_release(struct mm_struct *mm) argument
640 mmu_notifier_clear_flush_young(struct mm_struct *mm, unsigned long start, unsigned long end) argument
647 mmu_notifier_test_young(struct mm_struct *mm, unsigned long address) argument
653 mmu_notifier_change_pte(struct mm_struct *mm, unsigned long address, pte_t pte) argument
674 mmu_notifier_arch_invalidate_secondary_tlbs(struct mm_struct *mm, unsigned long start, unsigned long end) argument
679 mmu_notifier_subscriptions_init(struct mm_struct *mm) argument
683 mmu_notifier_subscriptions_destroy(struct mm_struct *mm) argument
[all...]
/linux-master/arch/sparc/include/asm/
H A Dtlbflush_64.h13 struct mm_struct *mm; member in struct:tlb_batch
21 void flush_tsb_user_page(struct mm_struct *mm, unsigned long vaddr,
26 static inline void flush_tlb_mm(struct mm_struct *mm) argument
56 static inline void global_flush_tlb_page(struct mm_struct *mm, unsigned long vaddr) argument
58 __flush_tlb_page(CTX_HWBITS(mm->context), vaddr);
64 void smp_flush_tlb_page(struct mm_struct *mm, unsigned long vaddr);
66 #define global_flush_tlb_page(mm, vaddr) \
67 smp_flush_tlb_page(mm, vaddr)
/linux-master/arch/sh/include/asm/
H A Dpgalloc.h5 #include <linux/mm.h>
14 extern void pgd_free(struct mm_struct *mm, pgd_t *pgd);
17 extern void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd);
18 extern pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address);
19 extern void pmd_free(struct mm_struct *mm, pmd_t *pmd);
20 #define __pmd_free_tlb(tlb, pmdp, addr) pmd_free((tlb)->mm, (pmdp))
23 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, argument
29 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, argument
/linux-master/arch/arm/include/asm/
H A Dvdso.h13 void arm_install_vdso(struct mm_struct *mm, unsigned long addr);
19 static inline void arm_install_vdso(struct mm_struct *mm, unsigned long addr) argument
/linux-master/arch/loongarch/include/asm/
H A Dmmu_context.h34 #define cpu_context(cpu, mm) ((mm)->context.asid[cpu])
36 #define cpu_asid(cpu, mm) (cpu_context((cpu), (mm)) & cpu_asid_mask(&cpu_data[cpu]))
38 static inline int asid_valid(struct mm_struct *mm, unsigned int cpu) argument
40 if ((cpu_context(cpu, mm) ^ asid_cache(cpu)) & asid_version_mask(cpu))
46 static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk) argument
52 get_new_mmu_context(struct mm_struct *mm, unsigned long cpu) argument
59 cpu_context(cpu, mm) = asid_cache(cpu) = asid;
67 init_new_context(struct task_struct *tsk, struct mm_struct *mm) argument
116 destroy_context(struct mm_struct *mm) argument
128 drop_mmu_context(struct mm_struct *mm, unsigned int cpu) argument
[all...]
/linux-master/arch/sparc/power/
H A Dhibernate.c8 #include <linux/mm.h>
37 struct mm_struct *mm = current->active_mm; local
39 tsb_context_switch_ctx(mm, CTX_HWBITS(mm->context));
/linux-master/include/asm-generic/
H A Dmmu_context.h15 * @mm: the currently active mm context which is becoming lazy
18 * tsk->mm will be NULL
21 static inline void enter_lazy_tlb(struct mm_struct *mm, argument
29 * @tsk: task struct for the mm
30 * @mm: the new mm struct
35 struct mm_struct *mm)
42 * destroy_context - Undo init_new_context when the mm is going away
43 * @mm
34 init_new_context(struct task_struct *tsk, struct mm_struct *mm) argument
46 destroy_context(struct mm_struct *mm) argument
70 deactivate_mm(struct task_struct *tsk, struct mm_struct *mm) argument
[all...]
H A Dmm_hooks.h11 struct mm_struct *mm)
16 static inline void arch_exit_mmap(struct mm_struct *mm) argument
20 static inline void arch_unmap(struct mm_struct *mm, argument
10 arch_dup_mmap(struct mm_struct *oldmm, struct mm_struct *mm) argument
/linux-master/arch/hexagon/include/asm/
H A Dtlbflush.h11 #include <linux/mm.h>
25 extern void flush_tlb_mm(struct mm_struct *mm);
39 * they would only be located by consulting the mm structure, and they
43 #define flush_tlb_pgtables(mm, start, end)
/linux-master/arch/powerpc/include/asm/nohash/
H A Dtlbflush.h8 * - flush_tlb_mm(mm) flushes the specified mm context TLB's
10 * - local_flush_tlb_mm(mm, full) flushes the specified mm context on
35 static inline void local_flush_tlb_mm(struct mm_struct *mm) argument
37 unsigned int pid = READ_ONCE(mm->context.id);
48 static inline void local_flush_tlb_page_psize(struct mm_struct *mm, argument
65 extern void local_flush_tlb_mm(struct mm_struct *mm);
67 void local_flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr, int psize);
69 extern void __local_flush_tlb_page(struct mm_struct *mm, unsigne
[all...]
/linux-master/arch/powerpc/include/asm/
H A Dpgalloc.h5 #include <linux/mm.h>
8 static inline gfp_t pgtable_gfp_flags(struct mm_struct *mm, gfp_t gfp) argument
10 if (unlikely(mm == &init_mm))
15 static inline gfp_t pgtable_gfp_flags(struct mm_struct *mm, gfp_t gfp) argument
23 pte_t *pte_fragment_alloc(struct mm_struct *mm, int kernel);
25 static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) argument
27 return (pte_t *)pte_fragment_alloc(mm, 1);
30 static inline pgtable_t pte_alloc_one(struct mm_struct *mm) argument
32 return (pgtable_t)pte_fragment_alloc(mm, 0);
38 static inline void pte_free_kernel(struct mm_struct *mm, pte_ argument
43 pte_free(struct mm_struct *mm, pgtable_t ptepage) argument
[all...]
H A Dpkeys.h52 #define mm_pkey_allocation_map(mm) (mm->context.pkey_allocation_map)
54 #define __mm_pkey_allocated(mm, pkey) { \
55 mm_pkey_allocation_map(mm) |= pkey_alloc_mask(pkey); \
58 #define __mm_pkey_free(mm, pkey) { \
59 mm_pkey_allocation_map(mm) &= ~pkey_alloc_mask(pkey); \
62 #define __mm_pkey_is_allocated(mm, pkey) \
63 (mm_pkey_allocation_map(mm) & pkey_alloc_mask(pkey))
68 static inline bool mm_pkey_is_allocated(struct mm_struct *mm, int pkey) argument
77 return __mm_pkey_is_allocated(mm, pke
85 mm_pkey_alloc(struct mm_struct *mm) argument
110 mm_pkey_free(struct mm_struct *mm, int pkey) argument
[all...]
/linux-master/arch/powerpc/mm/
H A Dmmu_context.c8 #include <linux/mm.h>
10 #include <linux/sched/mm.h>
17 struct mm_struct *mm)
20 tsk->thread.pgdir = mm->pgd;
22 tsk->thread.sr0 = mm->context.sr0;
25 tsk->thread.pid = mm->context.id;
30 struct mm_struct *mm)
33 get_paca()->pgd = mm->pgd;
35 tsk->thread.pid = mm->context.id;
40 struct mm_struct *mm) { }
16 switch_mm_pgdir(struct task_struct *tsk, struct mm_struct *mm) argument
29 switch_mm_pgdir(struct task_struct *tsk, struct mm_struct *mm) argument
39 switch_mm_pgdir(struct task_struct *tsk, struct mm_struct *mm) argument
110 arch_exit_mmap(struct mm_struct *mm) argument
[all...]
/linux-master/arch/m68k/include/asm/
H A Dmmu_context.h28 static inline void get_mmu_context(struct mm_struct *mm) argument
32 if (mm->context != NO_CONTEXT)
45 mm->context = ctx;
46 context_mm[ctx] = mm;
52 #define init_new_context(tsk, mm) (((mm)->context = NO_CONTEXT), 0)
58 static inline void destroy_context(struct mm_struct *mm) argument
60 if (mm->context != NO_CONTEXT) {
61 clear_bit(mm->context, context_map);
62 mm
84 activate_mm(struct mm_struct *active_mm, struct mm_struct *mm) argument
96 struct mm_struct *mm; local
178 init_new_context(struct task_struct *tsk, struct mm_struct *mm) argument
187 get_mmu_context(struct mm_struct *mm) argument
195 destroy_context(struct mm_struct *mm) argument
201 activate_context(struct mm_struct *mm) argument
227 init_new_context(struct task_struct *tsk, struct mm_struct *mm) argument
234 switch_mm_0230(struct mm_struct *mm) argument
267 switch_mm_0460(struct mm_struct *mm) argument
[all...]
H A Dmotorola_pgalloc.h27 static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) argument
32 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) argument
37 static inline pgtable_t pte_alloc_one(struct mm_struct *mm) argument
42 static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) argument
54 static inline pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address) argument
59 static inline int pmd_free(struct mm_struct *mm, pmd_t *pmd) argument
71 static inline void pgd_free(struct mm_struct *mm, pgd_t *pgd) argument
76 static inline pgd_t *pgd_alloc(struct mm_struct *mm) argument
82 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) argument
87 static inline void pmd_populate(struct mm_struct *mm, pmd_ argument
92 pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) argument
[all...]
/linux-master/arch/microblaze/include/asm/
H A Dmmu_context_mm.h75 * Get a new mmu context for the address space described by `mm'.
77 static inline void get_mmu_context(struct mm_struct *mm) argument
81 if (mm->context != NO_CONTEXT)
92 mm->context = ctx;
93 context_mm[ctx] = mm;
99 # define init_new_context(tsk, mm) (((mm)->context = NO_CONTEXT), 0)
105 static inline void destroy_context(struct mm_struct *mm) argument
107 if (mm->context != NO_CONTEXT) {
108 clear_bit(mm
127 activate_mm(struct mm_struct *active_mm, struct mm_struct *mm) argument
[all...]
/linux-master/arch/powerpc/include/asm/book3s/64/
H A Dtlbflush-radix.h65 extern void radix__flush_tlb_range_psize(struct mm_struct *mm, unsigned long start,
67 void radix__flush_tlb_pwc_range_psize(struct mm_struct *mm, unsigned long start,
77 extern void radix__local_flush_tlb_mm(struct mm_struct *mm);
78 extern void radix__local_flush_all_mm(struct mm_struct *mm);
80 extern void radix__local_flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr,
84 extern void radix__flush_tlb_mm(struct mm_struct *mm);
85 extern void radix__flush_all_mm(struct mm_struct *mm);
87 extern void radix__flush_tlb_page_psize(struct mm_struct *mm, unsigned long vmaddr,
90 #define radix__flush_tlb_mm(mm) radix__local_flush_tlb_mm(mm)
[all...]
/linux-master/arch/microblaze/mm/
H A Dmmu_context.c7 * Derived from arch/ppc/mm/4xx_mmu.c:
10 * Derived from arch/ppc/mm/init.c:
18 * Derived from "arch/i386/mm/init.c"
22 #include <linux/mm.h>
56 struct mm_struct *mm; local
62 mm = context_mm[next_mmu_context];
63 flush_tlb_mm(mm);
64 destroy_context(mm);
/linux-master/arch/alpha/include/asm/
H A Dpgalloc.h5 #include <linux/mm.h>
17 pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte) argument
23 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) argument
29 pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) argument
34 extern pgd_t *pgd_alloc(struct mm_struct *mm);
/linux-master/arch/powerpc/mm/book3s32/
H A Dtlb.c9 * Derived from arch/ppc/mm/init.c:
16 * Derived from "arch/i386/mm/init.c"
21 #include <linux/mm.h>
30 #include <mm/mmu_decl.h>
35 * - flush_tlb_mm(mm) flushes the specified mm context TLB's
50 void hash__flush_range(struct mm_struct *mm, unsigned long start, unsigned long end) argument
55 unsigned int ctx = mm->context.id;
61 pmd = pmd_off(mm, start);
79 * Flush all the (user) entries for the address space described by mm
81 hash__flush_tlb_mm(struct mm_struct *mm) argument
99 struct mm_struct *mm; local
[all...]
/linux-master/lib/
H A Dis_single_threaded.c10 #include <linux/sched/mm.h>
13 * Returns true if the task does not share ->mm with another thread/process.
18 struct mm_struct *mm = task->mm; local
25 if (atomic_read(&mm->mm_users) == 1)
37 if (unlikely(t->mm == mm))
39 if (likely(t->mm))
42 * t->mm == NULL. Make sure next_thread/next_task
/linux-master/arch/xtensa/include/asm/
H A Dpgalloc.h24 #define pmd_populate_kernel(mm, pmdp, ptep) \
26 #define pmd_populate(mm, pmdp, page) \
30 pgd_alloc(struct mm_struct *mm) argument
43 static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm) argument
47 ptep = (pte_t *)__pte_alloc_one_kernel(mm);
54 static inline pgtable_t pte_alloc_one(struct mm_struct *mm) argument
58 page = __pte_alloc_one(mm, GFP_PGTABLE_USER);
/linux-master/arch/hexagon/mm/
H A Dvm_tlb.c13 #include <linux/mm.h>
29 struct mm_struct *mm = vma->vm_mm; local
31 if (mm->context.ptbase == current->active_mm->context.ptbase)
57 void flush_tlb_mm(struct mm_struct *mm) argument
60 if (current->active_mm->context.ptbase == mm->context.ptbase)
69 struct mm_struct *mm = vma->vm_mm; local
71 if (mm->context.ptbase == current->active_mm->context.ptbase)
/linux-master/include/trace/events/
H A Dksm.h71 * @mm: address of the mm object of the process
77 TP_PROTO(void *mm),
79 TP_ARGS(mm),
82 __field(void *, mm)
86 __entry->mm = mm;
89 TP_printk("mm %p", __entry->mm)
95 * @mm
[all...]
/linux-master/mm/
H A Ddebug.c3 * mm/debug.c
5 * mm/ specific debug routines.
10 #include <linux/mm.h>
168 pr_emerg("vma %px start %px end %px mm %px\n"
180 void dump_mm(const struct mm_struct *mm) argument
182 pr_emerg("mm %px task_size %lu\n"
210 mm, mm->task_size,
212 mm->get_unmapped_area,
214 mm
[all...]

Completed in 390 milliseconds

1234567891011>>