Lines Matching refs:mm
166 down_write(¤t->mm->mmap_sem); in ib_umem_get()
168 locked = npages + current->mm->pinned_vm; in ib_umem_get()
191 ret = get_user_pages(current, current->mm, cur_base, in ib_umem_get()
234 current->mm->pinned_vm = locked; in ib_umem_get()
236 up_write(¤t->mm->mmap_sem); in ib_umem_get()
249 down_write(&umem->mm->mmap_sem); in ib_umem_account()
250 umem->mm->pinned_vm -= umem->diff; in ib_umem_account()
251 up_write(&umem->mm->mmap_sem); in ib_umem_account()
252 mmput(umem->mm); in ib_umem_account()
263 struct mm_struct *mm; in ib_umem_release() local
278 mm = get_task_mm(task); in ib_umem_release()
280 if (!mm) in ib_umem_release()
294 if (!down_write_trylock(&mm->mmap_sem)) { in ib_umem_release()
296 umem->mm = mm; in ib_umem_release()
303 down_write(&mm->mmap_sem); in ib_umem_release()
305 mm->pinned_vm -= diff; in ib_umem_release()
306 up_write(&mm->mmap_sem); in ib_umem_release()
307 mmput(mm); in ib_umem_release()