Commit 49c168a0 authored by Alexander Stein's avatar Alexander Stein Committed by liwei
Browse files

media: tc358743: register v4l2 async device only after successful setup

mainline inclusion
from mainline-v6.9-rc1
commit 87399f1ff92203d65f1febf5919429f4bb613a02
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/I9Q93E
CVE: CVE-2024-35830

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=87399f1ff92203d65f1febf5919429f4bb613a02



--------------------------------

Ensure the device has been setup correctly before registering the v4l2
async device, thus allowing userspace to access.

Signed-off-by: default avatarAlexander Stein <alexander.stein@ew.tq-group.com>
Reviewed-by: default avatarRobert Foss <rfoss@kernel.org>
Fixes: 4c5211a1 ("[media] tc358743: register v4l2 asynchronous subdevice")
Signed-off-by: default avatarRobert Foss <rfoss@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20240110090111.458115-1-alexander.stein@ew.tq-group.com


Signed-off-by: default avatarliwei <liwei728@huawei.com>
parent d8a3bc61
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -2108,9 +2108,6 @@ static int tc358743_probe(struct i2c_client *client)
	state->mbus_fmt_code = MEDIA_BUS_FMT_RGB888_1X24;

	sd->dev = &client->dev;
	err = v4l2_async_register_subdev(sd);
	if (err < 0)
		goto err_hdl;

	mutex_init(&state->confctl_mutex);

@@ -2168,6 +2165,10 @@ static int tc358743_probe(struct i2c_client *client)
	if (err)
		goto err_work_queues;

	err = v4l2_async_register_subdev(sd);
	if (err < 0)
		goto err_work_queues;

	v4l2_info(sd, "%s found @ 0x%x (%s)\n", client->name,
		  client->addr << 1, client->adapter->name);