[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20240211150705.3703-1-d.dulov@aladdin.ru>
Date: Sun, 11 Feb 2024 07:07:05 -0800
From: Daniil Dulov <d.dulov@...ddin.ru>
To: Hans Verkuil <hverkuil-cisco@...all.nl>
CC: Daniil Dulov <d.dulov@...ddin.ru>, Mauro Carvalho Chehab
<mchehab@...nel.org>, Greg Kroah-Hartman <gregkh@...e.de>,
<linux-media@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<lvc-project@...uxtesting.org>
Subject: [PATCH] media: go7007: add check of return value of go7007_read_addr()
If go7007_read_addr() returns error channel is not assigned a value.
In this case go to allocfail.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
Fixes: 866b8695d67e ("Staging: add the go7007 video driver")
Signed-off-by: Daniil Dulov <d.dulov@...ddin.ru>
---
drivers/media/usb/go7007/go7007-usb.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/media/usb/go7007/go7007-usb.c b/drivers/media/usb/go7007/go7007-usb.c
index eeb85981e02b..762c13e49bfa 100644
--- a/drivers/media/usb/go7007/go7007-usb.c
+++ b/drivers/media/usb/go7007/go7007-usb.c
@@ -1201,7 +1201,9 @@ static int go7007_usb_probe(struct usb_interface *intf,
u16 channel;
/* read channel number from GPIO[1:0] */
- go7007_read_addr(go, 0x3c81, &channel);
+ if (go7007_read_addr(go, 0x3c81, &channel))
+ goto allocfail;
+
channel &= 0x3;
go->board_id = GO7007_BOARDID_ADLINK_MPG24;
usb->board = board = &board_adlink_mpg24;
--
2.25.1
Powered by blists - more mailing lists