drm/etnaviv: fix gem_prime_get_sg_table to return new SG table
The object internal SG table must not be returned, as the caller will take ownership of the returned table. Construct a new table from the object pages and return this one instead. Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
This commit is contained in:
parent
557800532e
commit
5f4a4a73f4
|
@ -23,10 +23,12 @@
|
|||
struct sg_table *etnaviv_gem_prime_get_sg_table(struct drm_gem_object *obj)
|
||||
{
|
||||
struct etnaviv_gem_object *etnaviv_obj = to_etnaviv_bo(obj);
|
||||
int npages = obj->size >> PAGE_SHIFT;
|
||||
|
||||
BUG_ON(!etnaviv_obj->sgt); /* should have already pinned! */
|
||||
if (WARN_ON(!etnaviv_obj->pages)) /* should have already pinned! */
|
||||
return NULL;
|
||||
|
||||
return etnaviv_obj->sgt;
|
||||
return drm_prime_pages_to_sg(etnaviv_obj->pages, npages);
|
||||
}
|
||||
|
||||
void *etnaviv_gem_prime_vmap(struct drm_gem_object *obj)
|
||||
|
|
Loading…
Reference in a new issue