diff options
author | Dave Airlie <airlied@redhat.com> | 2020-07-23 08:28:05 +0300 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2020-07-23 08:28:10 +0300 |
commit | 2646699f4b5139d077186dfd4ca571a0ebb6d419 (patch) | |
tree | 171ed30376369064900462e5176d94fd83fe977c /drivers/gpu/drm/etnaviv/etnaviv_gem.c | |
parent | 5a394f19a2878e476d5f0ca64a3c874608c38dd3 (diff) | |
parent | c5d5a32ead1e3a61a07a1e59eb52a53e4a6b2a7f (diff) | |
download | linux-2646699f4b5139d077186dfd4ca571a0ebb6d419.tar.xz |
Merge branch 'etnaviv/next' of https://git.pengutronix.de/git/lst/linux into drm-next
Nothing too exciting:
- a cleanup of our clock handling and improved error handling in this
area from Lubomir
- conversion to pin_user_pages for long page references from John
- fixed PM runtime API error handling from Navid
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Lucas Stach <l.stach@pengutronix.de>
Link: https://patchwork.freedesktop.org/patch/msgid/d9e2660d71051bf3cab8aa7afc9f62102ac910d9.camel@pengutronix.de
Diffstat (limited to 'drivers/gpu/drm/etnaviv/etnaviv_gem.c')
-rw-r--r-- | drivers/gpu/drm/etnaviv/etnaviv_gem.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gem.c b/drivers/gpu/drm/etnaviv/etnaviv_gem.c index f5e5bb8ba953..f06e19e7be04 100644 --- a/drivers/gpu/drm/etnaviv/etnaviv_gem.c +++ b/drivers/gpu/drm/etnaviv/etnaviv_gem.c @@ -675,10 +675,10 @@ static int etnaviv_gem_userptr_get_pages(struct etnaviv_gem_object *etnaviv_obj) uint64_t ptr = userptr->ptr + pinned * PAGE_SIZE; struct page **pages = pvec + pinned; - ret = get_user_pages_fast(ptr, num_pages, + ret = pin_user_pages_fast(ptr, num_pages, !userptr->ro ? FOLL_WRITE : 0, pages); if (ret < 0) { - release_pages(pvec, pinned); + unpin_user_pages(pvec, pinned); kvfree(pvec); return ret; } @@ -702,7 +702,7 @@ static void etnaviv_gem_userptr_release(struct etnaviv_gem_object *etnaviv_obj) if (etnaviv_obj->pages) { int npages = etnaviv_obj->base.size >> PAGE_SHIFT; - release_pages(etnaviv_obj->pages, npages); + unpin_user_pages(etnaviv_obj->pages, npages); kvfree(etnaviv_obj->pages); } } |