Lines Matching refs:userptr
72 obj->userptr.work = NULL; in cancel_userptr()
91 end = obj->userptr.ptr + obj->base.size; in cancel_userptr()
252 if (!obj->userptr.workers) in i915_mmu_notifier_add()
299 mo = obj->userptr.mmu_object; in i915_gem_userptr_release__mmu_notifier()
306 obj->userptr.mmu_object = NULL; in i915_gem_userptr_release__mmu_notifier()
342 if (WARN_ON(obj->userptr.mm == NULL)) in i915_gem_userptr_init__mmu_notifier()
345 mn = i915_mmu_notifier_find(obj->userptr.mm); in i915_gem_userptr_init__mmu_notifier()
354 mo->it.start = obj->userptr.ptr; in i915_gem_userptr_init__mmu_notifier()
364 obj->userptr.mmu_object = mo; in i915_gem_userptr_init__mmu_notifier()
460 obj->userptr.mm = mm; in i915_gem_userptr_init__mm_struct()
491 if (obj->userptr.mm == NULL) in i915_gem_userptr_release__mm_struct()
494 kref_put_mutex(&obj->userptr.mm->kref, in i915_gem_userptr_release__mm_struct()
497 obj->userptr.mm = NULL; in i915_gem_userptr_release__mm_struct()
563 struct mm_struct *mm = obj->userptr.mm->mm; in __i915_gem_userptr_get_pages_worker()
568 obj->userptr.ptr + pinned * PAGE_SIZE, in __i915_gem_userptr_get_pages_worker()
570 !obj->userptr.read_only, 0, in __i915_gem_userptr_get_pages_worker()
581 if (obj->userptr.work != &work->work) { in __i915_gem_userptr_get_pages_worker()
591 obj->userptr.work = ERR_PTR(ret); in __i915_gem_userptr_get_pages_worker()
592 obj->userptr.workers--; in __i915_gem_userptr_get_pages_worker()
629 if (obj->userptr.mm->mm == current->mm) { in i915_gem_userptr_get_pages()
638 pinned = __get_user_pages_fast(obj->userptr.ptr, num_pages, in i915_gem_userptr_get_pages()
639 !obj->userptr.read_only, pvec); in i915_gem_userptr_get_pages()
666 if (obj->userptr.work == NULL && in i915_gem_userptr_get_pages()
667 obj->userptr.workers < I915_GEM_USERPTR_MAX_WORKERS) { in i915_gem_userptr_get_pages()
672 obj->userptr.work = &work->work; in i915_gem_userptr_get_pages()
673 obj->userptr.workers++; in i915_gem_userptr_get_pages()
686 if (IS_ERR(obj->userptr.work)) { in i915_gem_userptr_get_pages()
687 ret = PTR_ERR(obj->userptr.work); in i915_gem_userptr_get_pages()
688 obj->userptr.work = NULL; in i915_gem_userptr_get_pages()
695 obj->userptr.work = NULL; in i915_gem_userptr_get_pages()
710 BUG_ON(obj->userptr.work != NULL); in i915_gem_userptr_put_pages()
740 if (obj->userptr.mmu_object) in i915_gem_userptr_dmabuf_export()
828 obj->userptr.ptr = args->user_ptr; in i915_gem_userptr_ioctl()
829 obj->userptr.read_only = !!(args->flags & I915_USERPTR_READ_ONLY); in i915_gem_userptr_ioctl()