Lines Matching refs:mm
30 static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk, unsigned cpu) in enter_lazy_tlb() argument
44 extern void get_new_mmu_context(struct mm_struct *mm);
110 static inline void switch_mm(struct mm_struct *old_mm, struct mm_struct *mm, struct task_struct *ts… in switch_mm() argument
114 spin_lock(&mm->page_table_lock); in switch_mm()
115 if (CTX_VALID(mm->context)) in switch_mm()
120 if (!ctx_valid || (old_mm != mm)) { in switch_mm()
122 get_new_mmu_context(mm); in switch_mm()
124 load_secondary_context(mm); in switch_mm()
125 reload_tlbmiss_state(tsk, mm); in switch_mm()
137 if (!ctx_valid || !(mm->cpu_vm_mask & vm_mask)) { in switch_mm()
138 mm->cpu_vm_mask |= vm_mask; in switch_mm()
139 __flush_tlb_mm(CTX_HWBITS(mm->context), SECONDARY_CONTEXT); in switch_mm()
142 spin_unlock(&mm->page_table_lock); in switch_mm()
146 static inline void activate_mm(struct mm_struct *active_mm, struct mm_struct *mm) in activate_mm() argument
150 spin_lock(&mm->page_table_lock); in activate_mm()
151 if (!CTX_VALID(mm->context)) in activate_mm()
152 get_new_mmu_context(mm); in activate_mm()
154 if (!(mm->cpu_vm_mask & vm_mask)) in activate_mm()
155 mm->cpu_vm_mask |= vm_mask; in activate_mm()
156 spin_unlock(&mm->page_table_lock); in activate_mm()
158 load_secondary_context(mm); in activate_mm()
159 __flush_tlb_mm(CTX_HWBITS(mm->context), SECONDARY_CONTEXT); in activate_mm()
160 reload_tlbmiss_state(current, mm); in activate_mm()