Lines Matching refs:pages
61 kvfree(vgem_obj->pages); in vgem_gem_free_object()
88 if (obj->pages) { in vgem_gem_fault()
89 get_page(obj->pages[page_offset]); in vgem_gem_fault()
90 vmf->page = obj->pages[page_offset]; in vgem_gem_fault()
291 struct page **pages; in vgem_pin_pages() local
293 pages = drm_gem_get_pages(&bo->base); in vgem_pin_pages()
294 if (IS_ERR(pages)) { in vgem_pin_pages()
297 return pages; in vgem_pin_pages()
300 bo->pages = pages; in vgem_pin_pages()
304 return bo->pages; in vgem_pin_pages()
311 drm_gem_put_pages(&bo->base, bo->pages, true, true); in vgem_unpin_pages()
312 bo->pages = NULL; in vgem_unpin_pages()
321 struct page **pages; in vgem_prime_pin() local
323 pages = vgem_pin_pages(bo); in vgem_prime_pin()
324 if (IS_ERR(pages)) in vgem_prime_pin()
325 return PTR_ERR(pages); in vgem_prime_pin()
330 drm_clflush_pages(pages, n_pages); in vgem_prime_pin()
346 return drm_prime_pages_to_sg(bo->pages, bo->base.size >> PAGE_SHIFT); in vgem_prime_get_sg_table()
370 obj->pages = kvmalloc_array(npages, sizeof(struct page *), GFP_KERNEL); in vgem_prime_import_sg_table()
371 if (!obj->pages) { in vgem_prime_import_sg_table()
377 drm_prime_sg_to_page_addr_arrays(obj->table, obj->pages, NULL, in vgem_prime_import_sg_table()
386 struct page **pages; in vgem_prime_vmap() local
388 pages = vgem_pin_pages(bo); in vgem_prime_vmap()
389 if (IS_ERR(pages)) in vgem_prime_vmap()
392 return vmap(pages, n_pages, 0, pgprot_writecombine(PAGE_KERNEL)); in vgem_prime_vmap()