Some checks failed
Build Kernel / Build all affected Kernels (push) Has been cancelled
Build all core packages / Build all core packages for selected target (push) Has been cancelled
Build and Push prebuilt tools container / Build and Push all prebuilt containers (push) Has been cancelled
Build Toolchains / Build Toolchains for each target (push) Has been cancelled
Build host tools / Build host tools for linux and macos based systems (push) Has been cancelled
Coverity scan build / Coverity x86/64 build (push) Has been cancelled
36 lines
993 B
Diff
36 lines
993 B
Diff
From 4204deb5423c20600dadaf6303f65ecade673760 Mon Sep 17 00:00:00 2001
|
|
From: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
|
|
Date: Mon, 11 Sep 2023 12:17:25 +0300
|
|
Subject: [PATCH 0638/1085] media: i2c: imx477: Fix locking in
|
|
imx477_init_controls()
|
|
|
|
The driver does not lock the imx477 mutex when calling
|
|
imx477_set_framing_limits(), leading to:
|
|
|
|
WARNING: CPU: 3 PID: 426 at drivers/media/v4l2-core/v4l2-ctrls-api.c:934 __v4l2_ctrl_modify_range+0x1a0/0x210 [
|
|
videodev]
|
|
|
|
Fix this by taking the lock.
|
|
|
|
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
|
|
---
|
|
drivers/media/i2c/imx477.c | 4 ++++
|
|
1 file changed, 4 insertions(+)
|
|
|
|
--- a/drivers/media/i2c/imx477.c
|
|
+++ b/drivers/media/i2c/imx477.c
|
|
@@ -2069,9 +2069,13 @@ static int imx477_init_controls(struct i
|
|
|
|
imx477->sd.ctrl_handler = ctrl_hdlr;
|
|
|
|
+ mutex_lock(&imx477->mutex);
|
|
+
|
|
/* Setup exposure and frame/line length limits. */
|
|
imx477_set_framing_limits(imx477);
|
|
|
|
+ mutex_unlock(&imx477->mutex);
|
|
+
|
|
return 0;
|
|
|
|
error:
|