From: Daniel Vetter Date: Mon, 23 Nov 2015 09:32:43 +0000 (+0100) Subject: drm/armada: plug leak in dumb_map_offset X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=8d6185b55ceadea4fe3d7b451843786c4cae564e;p=linux-beck.git drm/armada: plug leak in dumb_map_offset We need to drop the gem bo reference if it's an imported one. Signed-off-by: Daniel Vetter Signed-off-by: Russell King --- diff --git a/drivers/gpu/drm/armada/armada_gem.c b/drivers/gpu/drm/armada/armada_gem.c index aaf88641bfc5..2a3ef7938f30 100644 --- a/drivers/gpu/drm/armada/armada_gem.c +++ b/drivers/gpu/drm/armada/armada_gem.c @@ -285,7 +285,7 @@ int armada_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, /* Don't allow imported objects to be mapped */ if (obj->obj.import_attach) { ret = -EINVAL; - goto err_unlock; + goto err_unref; } ret = drm_gem_create_mmap_offset(&obj->obj); @@ -294,6 +294,7 @@ int armada_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, DRM_DEBUG_DRIVER("handle %#x offset %llx\n", handle, *offset); } + err_unref: drm_gem_object_unreference(&obj->obj); err_unlock: mutex_unlock(&dev->struct_mutex);