Received: by 2002:a05:6a11:4021:0:0:0:0 with SMTP id ky33csp2349423pxb; Mon, 20 Sep 2021 19:43:12 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy5Bd/8mY6t0OEF5jXcaCHxA14xSVLb6WuOu7izUHLDmhgcBE2/tj/Ux/OjbEMwcg6Tno6l X-Received: by 2002:a17:906:2f94:: with SMTP id w20mr33422756eji.14.1632192192415; Mon, 20 Sep 2021 19:43:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1632192192; cv=none; d=google.com; s=arc-20160816; b=GflRrt1K1LoSToGsWPNH85KJRcoOw1CTE0eA+PuCVFa9+DbVQBNd4R+prYEc8WvCbU Hg/zJoPi3s9hDbdKVOBN8gTwze3UHAtQxlamjm2iu7SoboTOyUGwQztJ8IciO1VkWunt MeYg6DQmRLGdvKjrz35jyGPuLVfXKR+Cuscstcgy7qjMfuCuOGooEgGVKk1USdred8eT xlNd+hD5aPbQiSw0E700JOEtzENSmktBmwrbY/E+muLwNNvx+3CMxqN8VX6xQFddek6o cPkIA9ijSYXrUICXuNgg4i5DP7pFruqlfwaK2RH5BZtTr5XdGeC8MqvP3qWbzKw2dHuM nd5g== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=1MOw3pBn5yZn8i9TpCdyOmpabZHlCyzS2R0H6XOTRXI=; b=xjPFK4yFwOz5pnXJ/vUedJbK2j+8HtLyibyZOaZRxk8QTsWJUaYMjsfLqnIJ09SiOd IhFAW/2zQ7rbHTTTL6ycP+P7JPRBM09OZdU95YNklHUQc0Pl7EA0g8ikPGUKQqW3qVjI qnZiNy6/QtrdKSRXR6E9yRRcHQInbLfS6tiehd3G6XaPCaBBfgh6tija7oySwGB7ym0z ocEPNpCbOYJBeGUqj+nr0EenR/T/VfDK4rn1WOHl2beI12I1SHmxBqRY+vUkr8wyI/Ix /CU6NdM/4XN65JQhywuEm4f1VEW/9+YioVRUOzyFKOT1aek/RIC0qIWdLXsY/iilQlCd y3fw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@canonical.com header.s=20210705 header.b=cVCLcvTM; 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=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id r21si22796679ejo.47.2021.09.20.19.42.26; Mon, 20 Sep 2021 19:43:12 -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=@canonical.com header.s=20210705 header.b=cVCLcvTM; 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=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1359799AbhITSQR (ORCPT + 99 others); Mon, 20 Sep 2021 14:16:17 -0400 Received: from smtp-relay-canonical-1.canonical.com ([185.125.188.121]:35254 "EHLO smtp-relay-canonical-1.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1359090AbhITSKv (ORCPT ); Mon, 20 Sep 2021 14:10:51 -0400 Received: from localhost (1.general.cking.uk.vpn [10.172.193.212]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-canonical-1.canonical.com (Postfix) with ESMTPSA id F0B5B3F328; Mon, 20 Sep 2021 18:09:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1632161362; bh=1MOw3pBn5yZn8i9TpCdyOmpabZHlCyzS2R0H6XOTRXI=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Type; b=cVCLcvTM2TVoMt16SXlVJ71+YWdYtMotLXo0nRN7RYm++zX6WyllppDB/mzX4YSvv iY/oW26nPG3lA2FiQMr+Rwj1GsQqw8EP+/aUWT6wFjRzVS9VRfkGCGN9/BJ373g/+n mp2/uv+wQ/l3kmXH+2bKwpkt5XhNVDawgPJDzOsiPiU8aOBvBFfokch693AfrFnCxa TfYwfLIMMncYel61/1CNJ9CvZwoOS5IYojZz/H+OGyO/Dc1HrHZjLTZRuL7rSRRroC nnIBD7Mn6zV+Zw+ocFh5Q9mKPLUdXisCkcYa2mKxbSgSLBOO2w6h4uQZ3TrOTbfugp MGyjCRNxGTQrw== From: Colin King To: Jean Delvare , Guenter Roeck , Vadim Pasternak , linux-hwmon@vger.kernel.org Cc: kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH][next] hwmon: (mlxreg-fan): Fix out of bounds read on array fan->pwm Date: Mon, 20 Sep 2021 19:09:21 +0100 Message-Id: <20210920180921.16246-1-colin.king@canonical.com> X-Mailer: git-send-email 2.32.0 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: Colin Ian King Array fan->pwm[] is MLXREG_FAN_MAX_PWM elements in size, however the for-loop has a off-by-one error causing index i to be out of range causing an out of bounds read on the array. Fix this by replacing the <= operator with < in the for-loop. Addresses-Coverity: ("Out-of-bounds read") Fixes: 35edbaab3bbf ("hwmon: (mlxreg-fan) Extend driver to support multiply cooling devices") Signed-off-by: Colin Ian King --- drivers/hwmon/mlxreg-fan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/hwmon/mlxreg-fan.c b/drivers/hwmon/mlxreg-fan.c index 35228ed112d7..feab9ec6a6ca 100644 --- a/drivers/hwmon/mlxreg-fan.c +++ b/drivers/hwmon/mlxreg-fan.c @@ -554,7 +554,7 @@ static int mlxreg_fan_cooling_config(struct device *dev, struct mlxreg_fan *fan) { int i, j; - for (i = 0; i <= MLXREG_FAN_MAX_PWM; i++) { + for (i = 0; i < MLXREG_FAN_MAX_PWM; i++) { struct mlxreg_fan_pwm *pwm = &fan->pwm[i]; if (!pwm->connected) -- 2.32.0