Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp2743467pxj; Mon, 31 May 2021 09:37:25 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwub9Qrs3yyrO9SE11IfxvKMmb5tdj/nOdAejO7B0OhGmeX9kVo5JlgnV1L9r0eQNT++c3t X-Received: by 2002:a05:6e02:2188:: with SMTP id j8mr18116330ila.194.1622479044813; Mon, 31 May 2021 09:37:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622479044; cv=none; d=google.com; s=arc-20160816; b=h1KRI2QQRJC8IZuBd7JTf3+8d5fO1TaPwO83xcB0CLBjw3rUZsgtvjRch4339KItkC AZaVmDKUP2MWevxHKkdkx4esBNJA3rN+DZA+f19XnUWFyJ15JJKiUrJJv1IcHw+Z6Xe7 +Xt/F3eOpI0oNRzW8WqJdpnkzr31UfrrMUU/0sEZ1My8lxf6bjoJJjJbg5zAMv+sL0z7 r4Th90jtj1+YxbX+GQfgUMeVm/wBgN811SwAfn7U/hnxp+04/vaDLKyqP7qSRnHbH/Tn MaLmJQAXPBhkvP0X7pc5uvMxgS6eqZxJCjOPsgShFw5wfaHe9hmqf99pz/u6hgV+Yy3T /S+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=Bk1/bSMCoDZqBgiPwYdIWSaBD3uDHjlnEStZVytvZJY=; b=ag/osYtNDjDBu6fxioCQeHeZ0Y3zhRROdeQO+KKOKmF0vTvitf5UwUvyVe+uT4Kv68 YFxOhI5PglzQYjfDfJDIQcWZFsjJmDicmKyYoklt8lgP0sNT2Swe/4FTWBiwNpTujAM0 d7Z44QpvDJntGMD07PQ/w77rM9VKsV/KNAsCp347K72jajPAqGtJZ5tsDA1jidW/p4Sg AjwQQnOQUfrDVngLOT6UuRa4M3zwXK96f25AG6DktTd1VEJ5ENMsLsyk0laC5wGdAXSV CwLeZtDQbTKWdkjYqKDHRry/u0bVnODrTCwr+gE8uQ3PdsCJMTk0WF6iqBfskLIsqfl+ 97lA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=IAZKH38G; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id l12si7375589ils.9.2021.05.31.09.37.06; Mon, 31 May 2021 09:37:24 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=IAZKH38G; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234261AbhEaQh4 (ORCPT + 99 others); Mon, 31 May 2021 12:37:56 -0400 Received: from mail.kernel.org ([198.145.29.99]:40718 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234171AbhEaOth (ORCPT ); Mon, 31 May 2021 10:49:37 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 245C86192C; Mon, 31 May 2021 13:57:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1622469426; bh=lGqqaLBNP/9QRAroFbTLl3k3cLDdzW2qBzFiLQ2qiP0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=IAZKH38GHTqebn2OtCFlbqHegYMopU3Xb2HVJdRongGADr23H6SPQcK4RZWfFccOU X3b4dpKqsZTnqD+bU4zkut3pfDhUTANB4/AFud/j5Ua5PeO06Gzja5TQlHd9FEHvE7 Em/AJ9pjMlnOlezuM+JfnCEcpXdGazCLGiQcvXQY= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Mauro Carvalho Chehab , Alaa Emad , Sasha Levin Subject: [PATCH 5.12 193/296] media: gspca: mt9m111: Check write_bridge for timeout Date: Mon, 31 May 2021 15:14:08 +0200 Message-Id: <20210531130710.365483304@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210531130703.762129381@linuxfoundation.org> References: <20210531130703.762129381@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Alaa Emad [ Upstream commit e932f5b458eee63d013578ea128b9ff8ef5f5496 ] If m5602_write_bridge times out, it will return a negative error value. So properly check for this and handle the error correctly instead of just ignoring it. Cc: Mauro Carvalho Chehab Signed-off-by: Alaa Emad Link: https://lore.kernel.org/r/20210503115736.2104747-62-gregkh@linuxfoundation.org Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/media/usb/gspca/m5602/m5602_mt9m111.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/drivers/media/usb/gspca/m5602/m5602_mt9m111.c b/drivers/media/usb/gspca/m5602/m5602_mt9m111.c index 50481dc928d0..bf1af6ed9131 100644 --- a/drivers/media/usb/gspca/m5602/m5602_mt9m111.c +++ b/drivers/media/usb/gspca/m5602/m5602_mt9m111.c @@ -195,7 +195,7 @@ static const struct v4l2_ctrl_config mt9m111_greenbal_cfg = { int mt9m111_probe(struct sd *sd) { u8 data[2] = {0x00, 0x00}; - int i; + int i, err; struct gspca_dev *gspca_dev = (struct gspca_dev *)sd; if (force_sensor) { @@ -213,15 +213,17 @@ int mt9m111_probe(struct sd *sd) /* Do the preinit */ for (i = 0; i < ARRAY_SIZE(preinit_mt9m111); i++) { if (preinit_mt9m111[i][0] == BRIDGE) { - m5602_write_bridge(sd, - preinit_mt9m111[i][1], - preinit_mt9m111[i][2]); + err = m5602_write_bridge(sd, + preinit_mt9m111[i][1], + preinit_mt9m111[i][2]); } else { data[0] = preinit_mt9m111[i][2]; data[1] = preinit_mt9m111[i][3]; - m5602_write_sensor(sd, - preinit_mt9m111[i][1], data, 2); + err = m5602_write_sensor(sd, + preinit_mt9m111[i][1], data, 2); } + if (err < 0) + return err; } if (m5602_read_sensor(sd, MT9M111_SC_CHIPVER, data, 2)) -- 2.30.2