Skip to content

Commit ad99cb5

Browse files
Dan Carpenterlynxeye-dev
authored andcommitted
drm/etnaviv: Fix a leak in submit_pin_objects()
If the mapping address is wrong then we have to release the reference to it before returning -EINVAL. Fixes: 088880d ("drm/etnaviv: implement softpin") Signed-off-by: Dan Carpenter <[email protected]> Signed-off-by: Lucas Stach <[email protected]>
1 parent 40b697e commit ad99cb5

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,8 +238,10 @@ static int submit_pin_objects(struct etnaviv_gem_submit *submit)
238238
}
239239

240240
if ((submit->flags & ETNA_SUBMIT_SOFTPIN) &&
241-
submit->bos[i].va != mapping->iova)
241+
submit->bos[i].va != mapping->iova) {
242+
etnaviv_gem_mapping_unreference(mapping);
242243
return -EINVAL;
244+
}
243245

244246
atomic_inc(&etnaviv_obj->gpu_active);
245247

0 commit comments

Comments
 (0)