• Home
  • Raw
  • Download

Lines Matching refs:mm

76 	struct mm_struct *mm = (struct mm_struct *) info;  in ipi_sync_rq_state()  local
78 if (current->mm != mm) in ipi_sync_rq_state()
81 atomic_read(&mm->membarrier_state)); in ipi_sync_rq_state()
91 void membarrier_exec_mmap(struct mm_struct *mm) in membarrier_exec_mmap() argument
99 atomic_set(&mm->membarrier_state, 0); in membarrier_exec_mmap()
179 struct mm_struct *mm = current->mm; in membarrier_private_expedited() local
185 if (!(atomic_read(&mm->membarrier_state) & in membarrier_private_expedited()
192 if (!(atomic_read(&mm->membarrier_state) & in membarrier_private_expedited()
198 if (!(atomic_read(&mm->membarrier_state) & in membarrier_private_expedited()
204 (atomic_read(&mm->mm_users) == 1 || num_online_cpus() == 1)) in membarrier_private_expedited()
226 if (!p || p->mm != mm) { in membarrier_private_expedited()
239 if (p && p->mm == mm) in membarrier_private_expedited()
294 static int sync_runqueues_membarrier_state(struct mm_struct *mm) in sync_runqueues_membarrier_state() argument
296 int membarrier_state = atomic_read(&mm->membarrier_state); in sync_runqueues_membarrier_state()
300 if (atomic_read(&mm->mm_users) == 1 || num_online_cpus() == 1) { in sync_runqueues_membarrier_state()
339 if (p && p->mm == mm) in sync_runqueues_membarrier_state()
344 on_each_cpu_mask(tmpmask, ipi_sync_rq_state, mm, true); in sync_runqueues_membarrier_state()
356 struct mm_struct *mm = p->mm; in membarrier_register_global_expedited() local
359 if (atomic_read(&mm->membarrier_state) & in membarrier_register_global_expedited()
362 atomic_or(MEMBARRIER_STATE_GLOBAL_EXPEDITED, &mm->membarrier_state); in membarrier_register_global_expedited()
363 ret = sync_runqueues_membarrier_state(mm); in membarrier_register_global_expedited()
367 &mm->membarrier_state); in membarrier_register_global_expedited()
375 struct mm_struct *mm = p->mm; in membarrier_register_private_expedited() local
399 if ((atomic_read(&mm->membarrier_state) & ready_state) == ready_state) in membarrier_register_private_expedited()
405 atomic_or(set_state, &mm->membarrier_state); in membarrier_register_private_expedited()
406 ret = sync_runqueues_membarrier_state(mm); in membarrier_register_private_expedited()
409 atomic_or(ready_state, &mm->membarrier_state); in membarrier_register_private_expedited()