Lines Matching refs:mm
321 struct mm_struct *mm = vma->vm_mm; in aio_ring_mremap() local
325 spin_lock(&mm->ioctx_lock); in aio_ring_mremap()
327 table = rcu_dereference(mm->ioctx_table); in aio_ring_mremap()
342 spin_unlock(&mm->ioctx_lock); in aio_ring_mremap()
447 struct mm_struct *mm = current->mm; in aio_setup_ring() local
506 down_write(&mm->mmap_sem); in aio_setup_ring()
510 up_write(&mm->mmap_sem); in aio_setup_ring()
642 static int ioctx_add_table(struct kioctx *ctx, struct mm_struct *mm) in ioctx_add_table() argument
648 spin_lock(&mm->ioctx_lock); in ioctx_add_table()
649 table = rcu_dereference_raw(mm->ioctx_table); in ioctx_add_table()
657 spin_unlock(&mm->ioctx_lock); in ioctx_add_table()
670 spin_unlock(&mm->ioctx_lock); in ioctx_add_table()
679 spin_lock(&mm->ioctx_lock); in ioctx_add_table()
680 old = rcu_dereference_raw(mm->ioctx_table); in ioctx_add_table()
683 rcu_assign_pointer(mm->ioctx_table, table); in ioctx_add_table()
688 rcu_assign_pointer(mm->ioctx_table, table); in ioctx_add_table()
712 struct mm_struct *mm = current->mm; in ioctx_alloc() local
786 err = ioctx_add_table(ctx, mm); in ioctx_alloc()
794 ctx, ctx->user_id, mm, ctx->nr_events); in ioctx_alloc()
819 static int kill_ioctx(struct mm_struct *mm, struct kioctx *ctx, in kill_ioctx() argument
824 spin_lock(&mm->ioctx_lock); in kill_ioctx()
826 spin_unlock(&mm->ioctx_lock); in kill_ioctx()
830 table = rcu_dereference_raw(mm->ioctx_table); in kill_ioctx()
833 spin_unlock(&mm->ioctx_lock); in kill_ioctx()
863 void exit_aio(struct mm_struct *mm) in exit_aio() argument
865 struct kioctx_table *table = rcu_dereference_raw(mm->ioctx_table); in exit_aio()
893 kill_ioctx(mm, ctx, &wait); in exit_aio()
901 RCU_INIT_POINTER(mm->ioctx_table, NULL); in exit_aio()
1053 struct mm_struct *mm = current->mm; in lookup_ioctx() local
1062 table = rcu_dereference(mm->ioctx_table); in lookup_ioctx()
1360 kill_ioctx(current->mm, ioctx, NULL); in SYSCALL_DEFINE2()
1388 ret = kill_ioctx(current->mm, ioctx, &wait); in SYSCALL_DEFINE1()