diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2019-02-05 10:08:19 +0100 |
---|---|---|
committer | Lucas Stach <l.stach@pengutronix.de> | 2019-02-11 11:50:43 +0100 |
commit | 9e05352340d3a3e68c144136db9810b26ebb88c3 (patch) | |
tree | bcf5ec76dd0ece4aef4e27c56d4505b49b9d006d /drivers/gpu/drm/etnaviv | |
parent | drm/etnaviv: mmuv2: don't map zero page (diff) | |
download | linux-9e05352340d3a3e68c144136db9810b26ebb88c3.tar.xz linux-9e05352340d3a3e68c144136db9810b26ebb88c3.zip |
drm/etnaviv: potential NULL dereference
The etnaviv_gem_prime_get_sg_table() is supposed to return error
pointers. Otherwise it can lead to a NULL dereference when it's called
from drm_gem_map_dma_buf().
Fixes: 5f4a4a73f437 ("drm/etnaviv: fix gem_prime_get_sg_table to return new SG table")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Diffstat (limited to 'drivers/gpu/drm/etnaviv')
-rw-r--r-- | drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c b/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c index 0566171f8df2..f21529e635e3 100644 --- a/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c +++ b/drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c @@ -15,7 +15,7 @@ struct sg_table *etnaviv_gem_prime_get_sg_table(struct drm_gem_object *obj) int npages = obj->size >> PAGE_SHIFT; if (WARN_ON(!etnaviv_obj->pages)) /* should have already pinned! */ - return NULL; + return ERR_PTR(-EINVAL); return drm_prime_pages_to_sg(etnaviv_obj->pages, npages); } |