Now that we've removed any use of the page array outside of paths that are restricted to native (non-imported) objs, we can remove use of the deprecated function and allow msm_obj->pages to be NULL for imported dma-bufs.
Signed-off-by: Rob Clark <[email protected]> --- drivers/gpu/drm/msm/msm_gem.c | 27 ++------------------------- 1 file changed, 2 insertions(+), 25 deletions(-) diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c index 3111d7389572..130ae27ee00b 100644 --- a/drivers/gpu/drm/msm/msm_gem.c +++ b/drivers/gpu/drm/msm/msm_gem.c @@ -1116,11 +1116,6 @@ static void msm_gem_free_object(struct drm_gem_object *obj) if (drm_gem_is_imported(obj)) { GEM_WARN_ON(msm_obj->vaddr); - /* Don't drop the pages for imported dmabuf, as they are not - * ours, just free the array we allocated: - */ - kvfree(msm_obj->pages); - /* In msm_gem_import() error path, sgt won't be set yet: */ if (msm_obj->sgt) drm_prime_gem_destroy(obj, msm_obj->sgt); @@ -1350,14 +1345,10 @@ struct drm_gem_object *msm_gem_import(struct drm_device *dev, struct dma_buf_attachment *attach, struct sg_table *sgt) { - struct msm_gem_object *msm_obj; struct drm_gem_object *obj; struct dma_buf *dmabuf = attach->dmabuf; - size_t size, npages; int ret; - size = PAGE_ALIGN(dmabuf->size); - ret = msm_gem_new_impl(dev, MSM_BO_WC, &obj); if (ret) return ERR_PTR(ret); @@ -1368,28 +1359,14 @@ struct drm_gem_object *msm_gem_import(struct drm_device *dev, */ obj->import_attach = attach; obj->resv = dmabuf->resv; - drm_gem_private_object_init(dev, obj, size); - - npages = size / PAGE_SIZE; - - msm_obj = to_msm_bo(obj); - msm_obj->pages = kvmalloc_objs(struct page *, npages); - if (!msm_obj->pages) { - ret = -ENOMEM; - goto fail; - } - - ret = drm_prime_sg_to_page_array(sgt, msm_obj->pages, npages); - if (ret) { - goto fail; - } + drm_gem_private_object_init(dev, obj, PAGE_ALIGN(dmabuf->size)); ret = msm_gem_init_bookkeeping(obj); if (ret) goto fail; /* Now that we are past potential failure points, set sgt: */ - msm_obj->sgt = sgt; + to_msm_bo(obj)->sgt = sgt; return obj; -- 2.55.0
