Lines Matching refs:obj

45 void vgem_gem_put_pages(struct drm_vgem_gem_object *obj)  in vgem_gem_put_pages()  argument
47 drm_gem_put_pages(&obj->base, obj->pages, false, false); in vgem_gem_put_pages()
48 obj->pages = NULL; in vgem_gem_put_pages()
51 static void vgem_gem_free_object(struct drm_gem_object *obj) in vgem_gem_free_object() argument
53 struct drm_vgem_gem_object *vgem_obj = to_vgem_bo(obj); in vgem_gem_free_object()
55 drm_gem_free_mmap_offset(obj); in vgem_gem_free_object()
57 if (vgem_obj->use_dma_buf && obj->dma_buf) { in vgem_gem_free_object()
58 dma_buf_put(obj->dma_buf); in vgem_gem_free_object()
59 obj->dma_buf = NULL; in vgem_gem_free_object()
62 drm_gem_object_release(obj); in vgem_gem_free_object()
72 int vgem_gem_get_pages(struct drm_vgem_gem_object *obj) in vgem_gem_get_pages() argument
76 if (obj->pages || obj->use_dma_buf) in vgem_gem_get_pages()
79 pages = drm_gem_get_pages(&obj->base); in vgem_gem_get_pages()
84 obj->pages = pages; in vgem_gem_get_pages()
91 struct drm_vgem_gem_object *obj = vma->vm_private_data; in vgem_gem_fault() local
92 struct drm_device *dev = obj->base.dev; in vgem_gem_fault()
101 num_pages = DIV_ROUND_UP(obj->base.size, PAGE_SIZE); in vgem_gem_fault()
109 obj->pages[page_offset]); in vgem_gem_fault()
141 struct drm_vgem_gem_object *obj; in vgem_gem_create() local
147 obj = kzalloc(sizeof(*obj), GFP_KERNEL); in vgem_gem_create()
148 if (!obj) in vgem_gem_create()
151 gem_object = &obj->base; in vgem_gem_create()
168 kfree(obj); in vgem_gem_create()
202 struct drm_gem_object *obj; in vgem_gem_dumb_map() local
205 obj = drm_gem_object_lookup(dev, file, handle); in vgem_gem_dumb_map()
206 if (!obj) { in vgem_gem_dumb_map()
211 if (!drm_vma_node_has_offset(&obj->vma_node)) { in vgem_gem_dumb_map()
212 ret = drm_gem_create_mmap_offset(obj); in vgem_gem_dumb_map()
217 BUG_ON(!obj->filp); in vgem_gem_dumb_map()
219 obj->filp->private_data = obj; in vgem_gem_dumb_map()
221 ret = vgem_gem_get_pages(to_vgem_bo(obj)); in vgem_gem_dumb_map()
225 *offset = drm_vma_node_offset_addr(&obj->vma_node); in vgem_gem_dumb_map()
230 drm_gem_free_mmap_offset(obj); in vgem_gem_dumb_map()
232 drm_gem_object_unreference(obj); in vgem_gem_dumb_map()