]> git.ipfire.org Git - thirdparty/openwrt.git/blob
784ae522f18ff5619fa8d4b7896c48e52e54ddea
[thirdparty/openwrt.git] /
1 From 011cbf22d7583687ae18690185169e5da0be000a Mon Sep 17 00:00:00 2001
2 From: Yuriy Pasichnyk <yurijpasichnyk11@gmail.com>
3 Date: Tue, 18 Feb 2025 16:20:31 +0200
4 Subject: [PATCH] media: i2c: arducam-pivariety: Fix mutex init and NULL
5 pointer
6
7 The mutex used in arducam-pivariety was not properly initialized,
8 which could lead to undefined behavior. This also caused a NULL
9 pointer dereference under certain conditions.
10
11 This patch ensures the mutex is correctly initialized during probe
12 and prevents NULL pointer dereferences.
13
14 Signed-off-by: Yuriy Pasichnyk <yurijpasichnyk11@gmail.com>
15 ---
16 drivers/media/i2c/arducam-pivariety.c | 3 +++
17 1 file changed, 3 insertions(+)
18
19 --- a/drivers/media/i2c/arducam-pivariety.c
20 +++ b/drivers/media/i2c/arducam-pivariety.c
21 @@ -1208,6 +1208,8 @@ static int pivariety_enum_controls(struc
22 if (ret)
23 return ret;
24
25 + mutex_init(&pivariety->mutex);
26 +
27 index = 0;
28 while (1) {
29 ret = pivariety_write(pivariety, CTRL_INDEX_REG, index);
30 @@ -1295,6 +1297,7 @@ static int pivariety_enum_controls(struc
31 v4l2_ctrl_handler_setup(ctrl_hdlr);
32 return 0;
33 err:
34 + mutex_destroy(&pivariety->mutex);
35 return -ENODEV;
36 }
37