| /linux/include/linux/ |
| H A D | mmap_lock.h | 26 void __mmap_lock_do_trace_start_locking(struct mm_struct *mm, bool write); 27 void __mmap_lock_do_trace_acquire_returned(struct mm_struct *mm, bool write, 29 void __mmap_lock_do_trace_released(struct mm_struct *mm, bool write); 31 static inline void __mmap_lock_trace_start_locking(struct mm_struct *mm, in __mmap_lock_trace_start_locking() argument 35 __mmap_lock_do_trace_start_locking(mm, write); in __mmap_lock_trace_start_locking() 38 static inline void __mmap_lock_trace_acquire_returned(struct mm_struct *mm, in __mmap_lock_trace_acquire_returned() argument 42 __mmap_lock_do_trace_acquire_returned(mm, write, success); in __mmap_lock_trace_acquire_returned() 45 static inline void __mmap_lock_trace_released(struct mm_struct *mm, bool write) in __mmap_lock_trace_released() argument 48 __mmap_lock_do_trace_released(mm, write); in __mmap_lock_trace_released() 53 static inline void __mmap_lock_trace_start_locking(struct mm_struct *mm, in __mmap_lock_trace_start_locking() argument [all …]
|
| H A D | mmu_notifier.h | 89 struct mm_struct *mm); 101 struct mm_struct *mm, 111 struct mm_struct *mm, 122 struct mm_struct *mm, 199 struct mm_struct *mm, 213 struct mmu_notifier *(*alloc_notifier)(struct mm_struct *mm); 231 struct mm_struct *mm; member 293 struct mm_struct *mm; member 305 struct mm_struct *mm; member 313 static inline int mm_has_notifiers(struct mm_struct *mm) in mm_has_notifiers() argument [all …]
|
| /linux/arch/powerpc/include/asm/ |
| H A D | mmu_context.h | 18 extern int init_new_context(struct task_struct *tsk, struct mm_struct *mm); 20 extern void destroy_context(struct mm_struct *mm); 24 extern bool mm_iommu_preregistered(struct mm_struct *mm); 25 extern long mm_iommu_new(struct mm_struct *mm, 28 extern long mm_iommu_newdev(struct mm_struct *mm, unsigned long ua, 31 extern long mm_iommu_put(struct mm_struct *mm, 33 extern void mm_iommu_init(struct mm_struct *mm); 34 extern struct mm_iommu_table_group_mem_t *mm_iommu_lookup(struct mm_struct *mm, 36 extern struct mm_iommu_table_group_mem_t *mm_iommu_get(struct mm_struct *mm, 40 extern bool mm_iommu_is_devmem(struct mm_struct *mm, unsigned long hpa, [all …]
|
| /linux/arch/m68k/include/asm/ |
| H A D | mmu_context.h | 28 static inline void get_mmu_context(struct mm_struct *mm) in get_mmu_context() argument 32 if (mm->context != NO_CONTEXT) in get_mmu_context() 45 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 58 static inline void destroy_context(struct mm_struct *mm) in destroy_context() argument 60 if (mm->context != NO_CONTEXT) { in destroy_context() 61 clear_bit(mm->context, context_map); in destroy_context() 62 mm->context = NO_CONTEXT; in destroy_context() 75 get_mmu_context(tsk->mm); in switch_mm() [all …]
|
| /linux/arch/powerpc/mm/book3s64/ |
| H A D | mmu_context.c | 95 static int hash__init_new_context(struct mm_struct *mm) in hash__init_new_context() argument 99 mm->context.hash_context = kmalloc_obj(struct hash_mm_context); in hash__init_new_context() 100 if (!mm->context.hash_context) in hash__init_new_context() 117 if (mm->context.id == 0) { in hash__init_new_context() 118 memset(mm->context.hash_context, 0, sizeof(struct hash_mm_context)); in hash__init_new_context() 119 slice_init_new_context_exec(mm); in hash__init_new_context() 122 …memcpy(mm->context.hash_context, current->mm->context.hash_context, sizeof(struct hash_mm_context)… in hash__init_new_context() 125 if (current->mm->context.hash_context->spt) { in hash__init_new_context() 126 mm->context.hash_context->spt = kmalloc_obj(struct subpage_prot_table); in hash__init_new_context() 127 if (!mm->context.hash_context->spt) { in hash__init_new_context() [all …]
|
| /linux/tools/testing/vma/tests/ |
| H A D | merge.c | 72 static struct vm_area_struct *try_merge_new_vma(struct mm_struct *mm, in try_merge_new_vma() argument 92 return alloc_and_link_vma(mm, start, end, pgoff, vma_flags); in try_merge_new_vma() 100 struct mm_struct mm = {}; in test_simple_merge() 101 struct vm_area_struct *vma_left = alloc_vma(&mm, 0, 0x1000, 0, vma_flags); in test_simple_merge() 102 struct vm_area_struct *vma_right = alloc_vma(&mm, 0x2000, 0x3000, 2, vma_flags); in test_simple_merge() 103 VMA_ITERATOR(vmi, &mm, 0x1000); in test_simple_merge() 105 .mm = &mm, in test_simple_merge() 113 ASSERT_FALSE(attach_vma(&mm, vma_left)); in test_simple_merge() 114 ASSERT_FALSE(attach_vma(&mm, vma_righ in test_simple_merge() 99 struct mm_struct mm = {}; test_simple_merge() local 133 struct mm_struct mm = {}; test_simple_modify() local 193 struct mm_struct mm = {}; test_simple_expand() local 221 struct mm_struct mm = {}; test_simple_shrink() local 242 struct mm_struct mm = {}; __test_merge_new() local 473 struct mm_struct mm = {}; test_vma_merge_special_flags() local 545 struct mm_struct mm = {}; test_vma_merge_with_close() local 754 struct mm_struct mm = {}; test_vma_merge_new_with_close() local 811 struct mm_struct mm = {}; __test_merge_existing() local 1071 struct mm_struct mm = {}; test_anon_vma_non_mergeable() local 1158 struct mm_struct mm = {}; test_dup_anon_vma() local 1318 struct mm_struct mm = {}; test_vmi_prealloc_fail() local 1384 struct mm_struct mm = {}; test_merge_extend() local 1414 struct mm_struct mm = {}; test_expand_only_mode() local [all...] |
| /linux/include/asm-generic/ |
| H A D | pgalloc.h | 19 static inline pte_t *__pte_alloc_one_kernel_noprof(struct mm_struct *mm) in __pte_alloc_one_kernel_noprof() argument 25 if (!pagetable_pte_ctor(mm, ptdesc)) { in __pte_alloc_one_kernel_noprof() 43 static inline pte_t *pte_alloc_one_kernel_noprof(struct mm_struct *mm) in pte_alloc_one_kernel_noprof() argument 45 return __pte_alloc_one_kernel_noprof(mm); in pte_alloc_one_kernel_noprof() 55 static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte) in pte_free_kernel() argument 72 static inline pgtable_t __pte_alloc_one_noprof(struct mm_struct *mm, gfp_t gfp) in __pte_alloc_one_noprof() argument 79 if (!pagetable_pte_ctor(mm, ptdesc)) { in __pte_alloc_one_noprof() 97 static inline pgtable_t pte_alloc_one_noprof(struct mm_struct *mm) in pte_alloc_one_noprof() argument 99 return __pte_alloc_one_noprof(mm, GFP_PGTABLE_USER); in pte_alloc_one_noprof() 114 static inline void pte_free(struct mm_struct *mm, struct page *pte_page) in pte_free() argument [all …]
|
| /linux/arch/arm/include/asm/ |
| H A D | mmu_context.h | 24 void __check_vmalloc_seq(struct mm_struct *mm); 27 static inline void check_vmalloc_seq(struct mm_struct *mm) in check_vmalloc_seq() argument 30 unlikely(atomic_read(&mm->context.vmalloc_seq) != in check_vmalloc_seq() 32 __check_vmalloc_seq(mm); in check_vmalloc_seq() 38 void check_and_switch_context(struct mm_struct *mm, struct task_struct *tsk); 42 init_new_context(struct task_struct *tsk, struct mm_struct *mm) in init_new_context() argument 44 atomic64_set(&mm->context.id, 0); in init_new_context() 49 void a15_erratum_get_cpumask(int this_cpu, struct mm_struct *mm, 52 static inline void a15_erratum_get_cpumask(int this_cpu, struct mm_struct *mm, in a15_erratum_get_cpumask() argument 62 static inline void check_and_switch_context(struct mm_struct *mm, in check_and_switch_context() argument [all …]
|
| /linux/arch/arm/mm/ |
| H A D | pgd.c | 20 #define _pgd_alloc(mm) kmalloc_objs(pgd_t, PTRS_PER_PGD, GFP_KERNEL | __GFP_ZERO) argument 21 #define _pgd_free(mm, pgd) kfree(pgd) argument 23 #define _pgd_alloc(mm) __pgd_alloc(mm, 2) argument 24 #define _pgd_free(mm, pgd) __pgd_free(mm, pgd) argument 30 pgd_t *pgd_alloc(struct mm_struct *mm) in pgd_alloc() argument 38 new_pgd = _pgd_alloc(mm); in pgd_alloc() 55 new_p4d = p4d_alloc(mm, new_pgd + pgd_index(MODULES_VADDR), in pgd_alloc() 60 new_pud = pud_alloc(mm, new_p4d, MODULES_VADDR); in pgd_alloc() 64 new_pmd = pmd_alloc(mm, new_pud, 0); in pgd_alloc() 89 new_p4d = p4d_alloc(mm, new_pgd, 0); in pgd_alloc() [all …]
|
| /linux/mm/ |
| H A D | debug.c | 175 void dump_mm(const struct mm_struct *mm) in dump_mm() argument 202 mm, mm->task_size, in dump_mm() 203 mm->mmap_base, mm->mmap_legacy_base, in dump_mm() 204 mm->pgd, atomic_read(&mm->mm_users), in dump_mm() 205 atomic_read(&mm->mm_count), in dump_mm() 206 mm_pgtables_bytes(mm), in dump_mm() 207 mm->map_count, in dump_mm() 208 mm->hiwater_rss, mm->hiwater_vm, mm->total_vm, mm->locked_vm, in dump_mm() 209 (u64)atomic64_read(&mm->pinned_vm), in dump_mm() 210 mm->data_vm, mm->exec_vm, mm->stack_vm, in dump_mm() [all …]
|
| /linux/arch/x86/kernel/ |
| H A D | ldt.c | 42 void load_mm_ldt(struct mm_struct *mm) in load_mm_ldt() argument 47 ldt = READ_ONCE(mm->context.ldt); in load_mm_ldt() 138 struct mm_struct *mm = __mm; in flush_ldt() local 140 if (this_cpu_read(cpu_tlbstate.loaded_mm) != mm) in flush_ldt() 143 load_mm_ldt(mm); in flush_ldt() 189 static void do_sanity_check(struct mm_struct *mm, in do_sanity_check() argument 193 if (mm->context.ldt) { in do_sanity_check() 234 static void map_ldt_struct_to_user(struct mm_struct *mm) in map_ldt_struct_to_user() argument 236 pgd_t *k_pgd = pgd_offset(mm, LDT_BASE_ADDR); in map_ldt_struct_to_user() 243 if (boot_cpu_has(X86_FEATURE_PTI) && !mm->context.ldt) in map_ldt_struct_to_user() [all …]
|
| /linux/arch/sparc/mm/ |
| H A D | tsb.c | 121 struct mm_struct *mm = tb->mm; in flush_tsb_user() local 124 spin_lock_irqsave(&mm->context.lock, flags); in flush_tsb_user() 127 base = (unsigned long) mm->context.tsb_block[MM_TSB_BASE].tsb; in flush_tsb_user() 128 nentries = mm->context.tsb_block[MM_TSB_BASE].tsb_nentries; in flush_tsb_user() 140 else if (mm->context.tsb_block[MM_TSB_HUGE].tsb) { in flush_tsb_user() 141 base = (unsigned long) mm->context.tsb_block[MM_TSB_HUGE].tsb; in flush_tsb_user() 142 nentries = mm->context.tsb_block[MM_TSB_HUGE].tsb_nentries; in flush_tsb_user() 149 spin_unlock_irqrestore(&mm->context.lock, flags); in flush_tsb_user() 152 void flush_tsb_user_page(struct mm_struct *mm, unsigned long vaddr, in flush_tsb_user_page() argument 157 spin_lock_irqsave(&mm->context.lock, flags); in flush_tsb_user_page() [all …]
|
| /linux/include/linux/sched/ |
| H A D | mm.h | 35 static inline void mmgrab(struct mm_struct *mm) in mmgrab() argument 37 atomic_inc(&mm->mm_count); in mmgrab() 45 extern void __mmdrop(struct mm_struct *mm); 47 static inline void mmdrop(struct mm_struct *mm) in mmdrop() argument 54 if (unlikely(atomic_dec_and_test(&mm->mm_count))) in mmdrop() 55 __mmdrop(mm); in mmdrop() 65 struct mm_struct *mm = container_of(rhp, struct mm_struct, delayed_drop); in __mmdrop_delayed() local 67 __mmdrop(mm); in __mmdrop_delayed() 74 static inline void mmdrop_sched(struct mm_struct *mm) in mmdrop_sched() argument 77 if (atomic_dec_and_test(&mm->mm_count)) in mmdrop_sched() [all …]
|
| /linux/fs/proc/ |
| H A D | task_nommu.c | 21 void task_mem(struct seq_file *m, struct mm_struct *mm) in task_mem() argument 23 VMA_ITERATOR(vmi, mm, 0); in task_mem() 28 mmap_read_lock(mm); in task_mem() 40 if (atomic_read(&mm->mm_count) > 1 || in task_mem() 50 if (atomic_read(&mm->mm_count) > 1) in task_mem() 51 sbytes += kobjsize(mm); in task_mem() 53 bytes += kobjsize(mm); in task_mem() 72 mmap_read_unlock(mm); in task_mem() 81 unsigned long task_vsize(struct mm_struct *mm) in task_vsize() argument 83 VMA_ITERATOR(vmi, mm, 0); in task_vsize() [all …]
|
| /linux/drivers/net/ethernet/mscc/ |
| H A D | ocelot_mm.c | 55 struct ocelot_mm_state *mm = &ocelot->mm[port]; in ocelot_port_update_active_preemptible_tcs() local 66 ocelot_port->speed == SPEED_1000) && mm->tx_active) in ocelot_port_update_active_preemptible_tcs() 67 val = mm->preemptible_tcs; in ocelot_port_update_active_preemptible_tcs() 75 mm->active_preemptible_tcs = val; in ocelot_port_update_active_preemptible_tcs() 82 mm->tx_active ? "active" : "inactive", mm->preemptible_tcs, in ocelot_port_update_active_preemptible_tcs() 83 mm->active_preemptible_tcs); in ocelot_port_update_active_preemptible_tcs() 93 struct ocelot_mm_state *mm = &ocelot->mm[port]; in ocelot_port_change_fp() local 97 if (mm->preemptible_tcs == preemptible_tcs) in ocelot_port_change_fp() 100 mm->preemptible_tcs = preemptible_tcs; in ocelot_port_change_fp() 108 struct ocelot_mm_state *mm = &ocelot->mm[port]; in ocelot_mm_update_port_status() local [all …]
|
| /linux/drivers/gpu/drm/amd/amdkfd/ |
| H A D | kfd_mqd_manager.c | 49 struct kfd_mem_obj *allocate_hiq_mqd(struct mqd_manager *mm, struct queue_properties *q) in allocate_hiq_mqd() argument 52 struct kfd_node *dev = mm->dev; in allocate_hiq_mqd() 65 struct kfd_mem_obj *allocate_sdma_mqd(struct mqd_manager *mm, in allocate_sdma_mqd() argument 69 struct kfd_node *dev = mm->dev; in allocate_sdma_mqd() 93 void free_mqd_hiq_sdma(struct mqd_manager *mm, void *mqd, in free_mqd_hiq_sdma() argument 100 void mqd_symmetrically_map_cu_mask(struct mqd_manager *mm, in mqd_symmetrically_map_cu_mask() argument 104 struct amdgpu_cu_info *cu_info = &mm->dev->adev->gfx.cu_info; in mqd_symmetrically_map_cu_mask() 105 struct amdgpu_gfx_config *gfx_info = &mm->dev->adev->gfx.config; in mqd_symmetrically_map_cu_mask() 107 bool wgp_mode_req = KFD_GC_VERSION(mm->dev) >= IP_VERSION(10, 0, 0); in mqd_symmetrically_map_cu_mask() 111 int inc = cu_inc * NUM_XCC(mm->dev->xcc_mask); in mqd_symmetrically_map_cu_mask() [all …]
|
| H A D | kfd_mqd_manager_v9.c | 37 static void update_mqd(struct mqd_manager *mm, void *mqd, 41 static uint64_t mqd_stride_v9(struct mqd_manager *mm, in mqd_stride_v9() argument 44 if (mm->dev->kfd->cwsr_enabled && in mqd_stride_v9() 56 return mm->mqd_size; in mqd_stride_v9() 69 static void update_cu_mask(struct mqd_manager *mm, void *mqd, in update_cu_mask() argument 78 mqd_symmetrically_map_cu_mask(mm, in update_cu_mask() 87 if (KFD_GC_VERSION(mm->dev) != IP_VERSION(9, 4, 3) && in update_cu_mask() 88 KFD_GC_VERSION(mm->dev) != IP_VERSION(9, 4, 4) && in update_cu_mask() 89 KFD_GC_VERSION(mm->dev) != IP_VERSION(9, 5, 0)) { in update_cu_mask() 132 static struct kfd_mem_obj *allocate_mqd(struct mqd_manager *mm, in allocate_mqd() argument [all …]
|
| /linux/include/trace/events/ |
| H A D | ksm.h | 77 TP_PROTO(void *mm), 79 TP_ARGS(mm), 82 __field(void *, mm) 86 __entry->mm = mm; 89 TP_printk("mm %p", __entry->mm) 101 TP_PROTO(void *mm), 103 TP_ARGS(mm) 115 TP_PROTO(void *mm), 117 TP_ARGS(mm) 132 TP_PROTO(unsigned long pfn, void *rmap_item, void *mm, int err), [all …]
|
| /linux/kernel/sched/ |
| H A D | membarrier.c | 216 struct mm_struct *mm = (struct mm_struct *) info; in ipi_sync_rq_state() local 218 if (current->mm != mm) in ipi_sync_rq_state() 221 atomic_read(&mm->membarrier_state)); in ipi_sync_rq_state() 231 void membarrier_exec_mmap(struct mm_struct *mm) in membarrier_exec_mmap() argument 239 atomic_set(&mm->membarrier_state, 0); in membarrier_exec_mmap() 302 if (!p->mm) in membarrier_global_expedited() 328 struct mm_struct *mm = current->mm; in membarrier_private_expedited() local 334 if (!(atomic_read(&mm->membarrier_state) & in membarrier_private_expedited() 338 prepare_sync_core_cmd(mm); in membarrier_private_expedited() 342 if (!(atomic_read(&mm->membarrier_state) & in membarrier_private_expedited() [all …]
|
| /linux/kernel/ |
| H A D | fork.c | 562 void dup_mm_exe_file(struct mm_struct *mm, struct mm_struct *oldmm) in dup_mm_exe_file() argument 567 RCU_INIT_POINTER(mm->exe_file, exe_file); in dup_mm_exe_file() 577 static inline int mm_alloc_pgd(struct mm_struct *mm) in mm_alloc_pgd() argument 579 mm->pgd = pgd_alloc(mm); in mm_alloc_pgd() 580 if (unlikely(!mm->pgd)) in mm_alloc_pgd() 585 static inline void mm_free_pgd(struct mm_struct *mm) in mm_free_pgd() argument 587 pgd_free(mm, mm->pgd); in mm_free_pgd() 590 #define mm_alloc_pgd(mm) (0) argument 591 #define mm_free_pgd(mm) argument 597 static inline int mm_alloc_id(struct mm_struct *mm) in mm_alloc_id() argument [all …]
|
| /linux/arch/mips/include/asm/ |
| H A D | mmu_context.h | 106 static inline u64 cpu_context(unsigned int cpu, const struct mm_struct *mm) in cpu_context() argument 109 return atomic64_read(&mm->context.mmid); in cpu_context() 111 return mm->context.asid[cpu]; in cpu_context() 115 struct mm_struct *mm, u64 ctx) in set_cpu_context() argument 118 atomic64_set(&mm->context.mmid, ctx); in set_cpu_context() 120 mm->context.asid[cpu] = ctx; in set_cpu_context() 124 #define cpu_asid(cpu, mm) \ argument 125 (cpu_context((cpu), (mm)) & cpu_asid_mask(&cpu_data[cpu])) 127 extern void get_new_mmu_context(struct mm_struct *mm); 128 extern void check_mmu_context(struct mm_struct *mm); [all …]
|
| /linux/rust/helpers/ |
| H A D | mm.c | 3 #include <linux/mm.h> 4 #include <linux/sched/mm.h> 6 __rust_helper void rust_helper_mmgrab(struct mm_struct *mm) in rust_helper_mmgrab() argument 8 mmgrab(mm); in rust_helper_mmgrab() 11 __rust_helper void rust_helper_mmdrop(struct mm_struct *mm) in rust_helper_mmdrop() argument 13 mmdrop(mm); in rust_helper_mmdrop() 16 __rust_helper void rust_helper_mmget(struct mm_struct *mm) in rust_helper_mmget() argument 18 mmget(mm); in rust_helper_mmget() 21 __rust_helper bool rust_helper_mmget_not_zero(struct mm_struct *mm) in rust_helper_mmget_not_zero() argument 23 return mmget_not_zero(mm); in rust_helper_mmget_not_zero() 26 rust_helper_mmap_read_lock(struct mm_struct * mm) rust_helper_mmap_read_lock() argument 31 rust_helper_mmap_read_trylock(struct mm_struct * mm) rust_helper_mmap_read_trylock() argument 36 rust_helper_mmap_read_unlock(struct mm_struct * mm) rust_helper_mmap_read_unlock() argument 41 rust_helper_vma_lookup(struct mm_struct * mm,unsigned long addr) rust_helper_vma_lookup() argument [all...] |
| /linux/arch/x86/include/asm/ |
| H A D | pgalloc.h | 15 static inline int __paravirt_pgd_alloc(struct mm_struct *mm) { return 0; } in __paravirt_pgd_alloc() argument 20 #define paravirt_pgd_alloc(mm) __paravirt_pgd_alloc(mm) argument 21 static inline void paravirt_pgd_free(struct mm_struct *mm, pgd_t *pgd) {} in paravirt_pgd_free() argument 22 static inline void paravirt_alloc_pte(struct mm_struct *mm, unsigned long pfn) {} in paravirt_alloc_pte() argument 23 static inline void paravirt_alloc_pmd(struct mm_struct *mm, unsigned long pfn) {} in paravirt_alloc_pmd() argument 26 static inline void paravirt_alloc_pud(struct mm_struct *mm, unsigned long pfn) {} in paravirt_alloc_pud() argument 27 static inline void paravirt_alloc_p4d(struct mm_struct *mm, unsigned long pfn) {} in paravirt_alloc_p4d() argument 50 extern void pgd_free(struct mm_struct *mm, pgd_t *pgd); 62 static inline void pmd_populate_kernel(struct mm_struct *mm, in pmd_populate_kernel() argument 65 paravirt_alloc_pte(mm, __pa(pte) >> PAGE_SHIFT); in pmd_populate_kernel() [all …]
|
| /linux/kernel/futex/ |
| H A D | core.c | 70 void *mm; member 153 wake_up_var(fph->mm); in futex_private_hash_put() 190 fph = rcu_dereference(key->private.mm->futex_phash); in __futex_hash_private() 235 static bool __futex_pivot_hash(struct mm_struct *mm, in __futex_pivot_hash() argument 240 WARN_ON_ONCE(mm->futex_phash_new); in __futex_pivot_hash() 242 fph = rcu_dereference_protected(mm->futex_phash, in __futex_pivot_hash() 243 lockdep_is_held(&mm->futex_hash_lock)); in __futex_pivot_hash() 246 mm->futex_phash_new = new; in __futex_pivot_hash() 254 mm->futex_batches = get_state_synchronize_rcu(); in __futex_pivot_hash() 255 rcu_assign_pointer(mm->futex_phash, new); in __futex_pivot_hash() [all …]
|
| /linux/arch/loongarch/include/asm/ |
| H A D | mmu_context.h | 34 #define cpu_context(cpu, mm) ((mm)->context.asid[cpu]) argument 36 #define cpu_asid(cpu, mm) (cpu_context((cpu), (mm)) & cpu_asid_mask(&cpu_data[cpu])) argument 38 static inline int asid_valid(struct mm_struct *mm, unsigned int cpu) in asid_valid() argument 40 if ((cpu_context(cpu, mm) ^ asid_cache(cpu)) & asid_version_mask(cpu)) in asid_valid() 46 static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk) in enter_lazy_tlb() argument 52 get_new_mmu_context(struct mm_struct *mm, unsigned long cpu, bool *need_flush) in get_new_mmu_context() argument 59 cpu_context(cpu, mm) = asid_cache(cpu) = asid; in get_new_mmu_context() 67 init_new_context(struct task_struct *tsk, struct mm_struct *mm) in init_new_context() argument 72 cpu_context(i, mm) = 0; in init_new_context() 129 static inline void destroy_context(struct mm_struct *mm) in destroy_context() argument [all …]
|