[PATCH] drm/exynos: fix exynos_drm_gem_prime_import_sg_table() error handling

Joonyoung Shim jy0922.shim at samsung.com
Thu Aug 27 01:31:05 PDT 2015


If exynos_drm_gem_init() is failed, the result is ERR_PTR, so we should
just return the result. If not, wrong porinter will be referenced from
err label.

Reported-by: Dan Carpenter <dan.carpenter at oracle.com>
Signed-off-by: Joonyoung Shim <jy0922.shim at samsung.com>
---
 drivers/gpu/drm/exynos/exynos_drm_gem.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.c b/drivers/gpu/drm/exynos/exynos_drm_gem.c
index 3e4a64a..4842a31 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_gem.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_gem.c
@@ -569,10 +569,8 @@ exynos_drm_gem_prime_import_sg_table(struct drm_device *dev,
 	int ret;
 
 	exynos_gem_obj = exynos_drm_gem_init(dev, attach->dmabuf->size);
-	if (IS_ERR(exynos_gem_obj)) {
-		ret = PTR_ERR(exynos_gem_obj);
-		goto err;
-	}
+	if (IS_ERR(exynos_gem_obj))
+		return exynos_gem_obj;
 
 	exynos_gem_obj->dma_addr = sg_dma_address(sgt->sgl);
 
-- 
1.9.1



More information about the dri-devel mailing list