Lines Matching defs:obj
103 vma_create(struct drm_i915_gem_object *obj,
122 vma->obj = obj;
123 vma->resv = obj->base.resv;
124 vma->size = obj->base.size;
144 obj->base.size >> PAGE_SHIFT));
147 GEM_BUG_ON(vma->size > obj->base.size);
162 spin_lock(&obj->vma.lock);
169 i915_gem_object_get_tiling(obj),
170 i915_gem_object_get_stride(obj));
178 i915_gem_object_get_tiling(obj),
179 i915_gem_object_get_stride(obj));
186 p = &obj->vma.tree.rb_node;
207 rb_insert_color(&vma->obj_node, &obj->vma.tree);
216 list_add(&vma->obj_link, &obj->vma.list);
218 list_add_tail(&vma->obj_link, &obj->vma.list);
220 spin_unlock(&obj->vma.lock);
225 spin_unlock(&obj->vma.lock);
233 vma_lookup(struct drm_i915_gem_object *obj,
239 rb = obj->vma.tree.rb_node;
259 * @obj: parent &struct drm_i915_gem_object to be mapped
263 * i915_vma_instance() looks up an existing VMA of the @obj in the @vm with
271 i915_vma_instance(struct drm_i915_gem_object *obj,
280 spin_lock(&obj->vma.lock);
281 vma = vma_lookup(obj, vm, view);
282 spin_unlock(&obj->vma.lock);
286 vma = vma_create(obj, vm, view);
421 * part of the obj->resv->excl_fence as it only affects
434 if (vma->obj) {
435 __i915_gem_object_pin_pages(vma->obj);
436 work->pinned = i915_gem_object_get(vma->obj);
442 if (vma->obj)
443 set_bit(I915_BO_WAS_BOUND_BIT, &vma->obj->flags);
514 struct drm_i915_gem_object *obj;
520 obj = vma->obj;
521 GEM_BUG_ON(!obj);
526 i915_gem_object_unpin_map(obj);
528 i915_gem_object_put(obj);
669 if (vma->obj && i915_vm_has_cache_coloring(vma->vm))
670 color = vma->obj->cache_level;
803 if (vma->obj) {
804 err = i915_gem_object_pin_pages(vma->obj);
811 if (vma->obj)
812 i915_gem_object_unpin_pages(vma->obj);
832 if (vma->obj)
833 i915_gem_object_unpin_pages(vma->obj);
973 vma->obj ? vma->obj->cache_level : 0,
1109 if (vma->obj) {
1110 struct drm_i915_gem_object *obj = vma->obj;
1112 spin_lock(&obj->vma.lock);
1115 rb_erase(&vma->obj_node, &obj->vma.tree);
1116 spin_unlock(&obj->vma.lock);
1133 struct drm_i915_gem_object *obj = vma->obj;
1138 if (!kref_get_unless_zero(&obj->base.refcount))
1142 i915_gem_object_put(obj);
1152 struct drm_i915_gem_object *obj = vma->obj;
1158 i915_gem_object_put(obj);
1183 GEM_BUG_ON(!vma->obj->userfault_count);
1193 if (!--vma->obj->userfault_count)
1194 list_del(&vma->obj->userfault_link);
1221 struct drm_i915_gem_object *obj = vma->obj;
1224 assert_object_held(obj);
1233 front = __intel_frontbuffer_get(obj);
1241 obj->write_domain = I915_GEM_DOMAIN_RENDER;
1242 obj->read_domains = 0;
1249 obj->write_domain = 0;
1255 obj->read_domains |= I915_GEM_GPU_DOMAINS;
1256 obj->mm.dirty = true;
1373 i915_gem_object_make_unshrinkable(vma->obj);
1379 i915_gem_object_make_shrinkable(vma->obj);
1384 i915_gem_object_make_purgeable(vma->obj);