From: Dan Carpenter Date: Tue, 1 Feb 2022 13:00:16 +0000 (+0100) Subject: media: i2c: ov08d10: Unlock on error in ov08d10_enum_frame_size() X-Git-Tag: v5.18-rc1~153^2~134 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cc74074ad9369ef54ba5d3b45edc28e9677911e7;p=thirdparty%2Fkernel%2Flinux.git media: i2c: ov08d10: Unlock on error in ov08d10_enum_frame_size() This error path needs to drop the mutex to avoid a deadlock. Fixes: 7be91e02ed57 ("media: i2c: Add ov08d10 camera sensor driver") Signed-off-by: Dan Carpenter Signed-off-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/i2c/ov08d10.c b/drivers/media/i2c/ov08d10.c index 1f42dd714ef62..e5ef6466a3ec4 100644 --- a/drivers/media/i2c/ov08d10.c +++ b/drivers/media/i2c/ov08d10.c @@ -1264,8 +1264,10 @@ static int ov08d10_enum_frame_size(struct v4l2_subdev *sd, return -EINVAL; mutex_lock(&ov08d10->mutex); - if (fse->code != ov08d10_get_format_code(ov08d10)) + if (fse->code != ov08d10_get_format_code(ov08d10)) { + mutex_unlock(&ov08d10->mutex); return -EINVAL; + } mutex_unlock(&ov08d10->mutex); fse->min_width = ov08d10->priv_lane->sp_modes[fse->index].width;