Lines Matching refs:mm
152 void smp_flush_cache_mm(struct mm_struct *mm) in smp_flush_cache_mm() argument
154 if(mm->context != NO_CONTEXT) { in smp_flush_cache_mm()
155 if(mm->cpu_vm_mask != (1 << smp_processor_id())) in smp_flush_cache_mm()
156 xc1((smpfunc_t) BTFIXUP_CALL(local_flush_cache_mm), (unsigned long) mm); in smp_flush_cache_mm()
157 local_flush_cache_mm(mm); in smp_flush_cache_mm()
161 void smp_flush_tlb_mm(struct mm_struct *mm) in smp_flush_tlb_mm() argument
163 if(mm->context != NO_CONTEXT) { in smp_flush_tlb_mm()
164 if(mm->cpu_vm_mask != (1 << smp_processor_id())) { in smp_flush_tlb_mm()
165 xc1((smpfunc_t) BTFIXUP_CALL(local_flush_tlb_mm), (unsigned long) mm); in smp_flush_tlb_mm()
166 if(atomic_read(&mm->mm_users) == 1 && current->active_mm == mm) in smp_flush_tlb_mm()
167 mm->cpu_vm_mask = (1 << smp_processor_id()); in smp_flush_tlb_mm()
169 local_flush_tlb_mm(mm); in smp_flush_tlb_mm()
173 void smp_flush_cache_range(struct mm_struct *mm, unsigned long start, in smp_flush_cache_range() argument
176 if(mm->context != NO_CONTEXT) { in smp_flush_cache_range()
177 if(mm->cpu_vm_mask != (1 << smp_processor_id())) in smp_flush_cache_range()
178 xc3((smpfunc_t) BTFIXUP_CALL(local_flush_cache_range), (unsigned long) mm, start, end); in smp_flush_cache_range()
179 local_flush_cache_range(mm, start, end); in smp_flush_cache_range()
183 void smp_flush_tlb_range(struct mm_struct *mm, unsigned long start, in smp_flush_tlb_range() argument
186 if(mm->context != NO_CONTEXT) { in smp_flush_tlb_range()
187 if(mm->cpu_vm_mask != (1 << smp_processor_id())) in smp_flush_tlb_range()
188 xc3((smpfunc_t) BTFIXUP_CALL(local_flush_tlb_range), (unsigned long) mm, start, end); in smp_flush_tlb_range()
189 local_flush_tlb_range(mm, start, end); in smp_flush_tlb_range()
195 struct mm_struct *mm = vma->vm_mm; in smp_flush_cache_page() local
197 if(mm->context != NO_CONTEXT) { in smp_flush_cache_page()
198 if(mm->cpu_vm_mask != (1 << smp_processor_id())) in smp_flush_cache_page()
206 struct mm_struct *mm = vma->vm_mm; in smp_flush_tlb_page() local
208 if(mm->context != NO_CONTEXT) { in smp_flush_tlb_page()
209 if(mm->cpu_vm_mask != (1 << smp_processor_id())) in smp_flush_tlb_page()
229 void smp_flush_sig_insns(struct mm_struct *mm, unsigned long insn_addr) in smp_flush_sig_insns() argument
231 if(mm->cpu_vm_mask != (1 << smp_processor_id())) in smp_flush_sig_insns()
232 xc2((smpfunc_t) BTFIXUP_CALL(local_flush_sig_insns), (unsigned long) mm, insn_addr); in smp_flush_sig_insns()
233 local_flush_sig_insns(mm, insn_addr); in smp_flush_sig_insns()