Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aebe8e43 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Greg Kroah-Hartman
Browse files

media: rcar_fdp1: simplify error check logic at fdp_open()



[ Upstream commit fa9f443f7c962d072d150472e2bb77de39817a9a ]

Avoid some code duplication by moving the common error path
logic at fdp_open().

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Stable-dep-of: c766c90faf93 ("media: rcar_fdp1: Fix refcount leak in probe and remove function")
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent a4b6ab36
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -2121,9 +2121,7 @@ static int fdp1_open(struct file *file)

	if (ctx->hdl.error) {
		ret = ctx->hdl.error;
		v4l2_ctrl_handler_free(&ctx->hdl);
		kfree(ctx);
		goto done;
		goto error_ctx;
	}

	ctx->fh.ctrl_handler = &ctx->hdl;
@@ -2137,10 +2135,7 @@ static int fdp1_open(struct file *file)

	if (IS_ERR(ctx->fh.m2m_ctx)) {
		ret = PTR_ERR(ctx->fh.m2m_ctx);

		v4l2_ctrl_handler_free(&ctx->hdl);
		kfree(ctx);
		goto done;
		goto error_ctx;
	}

	/* Perform any power management required */
@@ -2151,6 +2146,12 @@ static int fdp1_open(struct file *file)
	dprintk(fdp1, "Created instance: %p, m2m_ctx: %p\n",
		ctx, ctx->fh.m2m_ctx);

	mutex_unlock(&fdp1->dev_mutex);
	return 0;

error_ctx:
	v4l2_ctrl_handler_free(&ctx->hdl);
	kfree(ctx);
done:
	mutex_unlock(&fdp1->dev_mutex);
	return ret;