Blob Blame History Raw
From 0d352a3a8a1f26168d09f7073e61bb4b328e3bb9 Mon Sep 17 00:00:00 2001
From: Iago Toral Quiroga <itoral@igalia.com>
Date: Mon, 16 Sep 2019 09:11:25 +0200
Subject: [PATCH] drm/v3d: don't leak bin job if v3d_job_init fails.
Git-commit: 0d352a3a8a1f26168d09f7073e61bb4b328e3bb9
Patch-mainline: v5.5-rc1
References: git-fixes

If the initialization of the job fails we need to kfree() it
before returning.

Signed-off-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Eric Anholt <eric@anholt.net>
Link: https://patchwork.freedesktop.org/patch/msgid/20190916071125.5255-1-itoral@igalia.com
Fixes: a783a09ee76d ("drm/v3d: Refactor job management.")
Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Takashi Iwai <tiwai@suse.de>

---
 drivers/gpu/drm/v3d/v3d_gem.c |    1 +
 1 file changed, 1 insertion(+)

--- a/drivers/gpu/drm/v3d/v3d_gem.c
+++ b/drivers/gpu/drm/v3d/v3d_gem.c
@@ -563,6 +563,7 @@ v3d_submit_cl_ioctl(struct drm_device *d
 		ret = v3d_job_init(v3d, file_priv, &bin->base,
 				   v3d_job_free, args->in_sync_bcl);
 		if (ret) {
+			kfree(bin);
 			v3d_job_put(&render->base);
 			kfree(bin);
 			return ret;