Linux-PM Archive mirror
 help / color / mirror / Atom feed
From: "thermal-bot for Nicolas Pitre" <tip-bot2@linutronix.de>
To: linux-pm@vger.kernel.org
Cc: Nicolas Pitre <npitre@baylibre.com>,
	Daniel Lezcano <daniel.lezcano@linaro.org>,
	rui.zhang@intel.com, amitk@kernel.org
Subject: [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Guard against efuse data buffer overflow
Date: Tue, 14 May 2024 10:18:54 -0000	[thread overview]
Message-ID: <171568193401.10875.1393372785699330172.tip-bot2@tip-bot2> (raw)
In-Reply-To: <20240402032729.2736685-6-nico@fluxnic.net>

The following commit has been merged into the thermal/fixes branch of thermal:

Commit-ID:     2cc0b1a2169b0f4af83cc5a52a1693c8ab2e2f1d
Gitweb:        https://git.kernel.org/pub/scm/linux/kernel/git/thermal/linux.git//2cc0b1a2169b0f4af83cc5a52a1693c8ab2e2f1d
Author:        Nicolas Pitre <npitre@baylibre.com>
AuthorDate:    Mon, 01 Apr 2024 23:25:39 -04:00
Committer:     Daniel Lezcano <daniel.lezcano@linaro.org>
CommitterDate: Tue, 23 Apr 2024 12:40:29 +02:00

thermal/drivers/mediatek/lvts_thermal: Guard against efuse data buffer overflow

We don't want to silently fetch garbage past the actual buffer.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20240402032729.2736685-6-nico@fluxnic.net
---
 drivers/thermal/mediatek/lvts_thermal.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/thermal/mediatek/lvts_thermal.c b/drivers/thermal/mediatek/lvts_thermal.c
index 9e6ed8b..1467994 100644
--- a/drivers/thermal/mediatek/lvts_thermal.c
+++ b/drivers/thermal/mediatek/lvts_thermal.c
@@ -672,7 +672,8 @@ static int lvts_sensor_init(struct device *dev, struct lvts_ctrl *lvts_ctrl,
  */
 static int lvts_calibration_init(struct device *dev, struct lvts_ctrl *lvts_ctrl,
 					const struct lvts_ctrl_data *lvts_ctrl_data,
-					u8 *efuse_calibration)
+					u8 *efuse_calibration,
+					size_t calib_len)
 {
 	int i;
 
@@ -680,6 +681,11 @@ static int lvts_calibration_init(struct device *dev, struct lvts_ctrl *lvts_ctrl
 		const struct lvts_sensor_data *sensor =
 					&lvts_ctrl_data->lvts_sensor[i];
 
+		if (sensor->cal_offsets[0] >= calib_len ||
+		    sensor->cal_offsets[1] >= calib_len ||
+		    sensor->cal_offsets[2] >= calib_len)
+			return -EINVAL;
+
 		lvts_ctrl->calibration[i] =
 			(efuse_calibration[sensor->cal_offsets[0]] << 0) +
 			(efuse_calibration[sensor->cal_offsets[1]] << 8) +
@@ -791,7 +797,8 @@ static int lvts_ctrl_init(struct device *dev, struct lvts_domain *lvts_td,
 
 		ret = lvts_calibration_init(dev, &lvts_ctrl[i],
 					    &lvts_data->lvts_ctrl[i],
-					    lvts_td->calib);
+					    lvts_td->calib,
+					    lvts_td->calib_len);
 		if (ret)
 			return ret;
 

  reply	other threads:[~2024-05-14 10:18 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-02  3:25 [PATCH v3 00/15] Mediatek thermal sensor driver support for MT8186 and MT8188 Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 01/15] thermal/drivers/mediatek/lvts_thermal: retrieve all calibration bytes Nicolas Pitre
2024-05-14 10:18   ` [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Retrieve " thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 02/15] thermal/drivers/mediatek/lvts_thermal: move comment Nicolas Pitre
2024-05-14 10:18   ` [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Move comment thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 03/15] thermal/drivers/mediatek/lvts_thermal: remove .hw_tshut_temp Nicolas Pitre
2024-05-14 10:18   ` [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Remove .hw_tshut_temp thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 04/15] thermal/drivers/mediatek/lvts_thermal: use offsets for every calibration byte Nicolas Pitre
2024-05-14 10:18   ` [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Use " thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 05/15] thermal/drivers/mediatek/lvts_thermal: guard against efuse data buffer overflow Nicolas Pitre
2024-05-14 10:18   ` thermal-bot for Nicolas Pitre [this message]
2024-04-02  3:25 ` [PATCH v2 06/15] dt-bindings: thermal: mediatek: Add LVTS thermal controller definition for MT8186 Nicolas Pitre
2024-04-02  6:44   ` Krzysztof Kozlowski
2024-05-14 10:18   ` [thermal: thermal/fixes] " thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 07/15] arm64: dts: mediatek: mt8186: add lvts definitions Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 08/15] thermal/drivers/mediatek/lvts_thermal: add MT8186 support Nicolas Pitre
2024-05-14 10:18   ` [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Add " thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 09/15] arm64: dts: mediatek: mt8186: add default thermal zones Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 10/15] thermal/drivers/mediatek/lvts_thermal: provision for gt variable location Nicolas Pitre
2024-05-14 10:18   ` [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Provision " thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 11/15] thermal/drivers/mediatek/lvts_thermal: allow early empty sensor slots Nicolas Pitre
2024-05-14 10:18   ` [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Allow " thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 12/15] dt-bindings: thermal: mediatek: Add LVTS thermal controller definition for MT8188 Nicolas Pitre
2024-04-02 16:23   ` Rob Herring
2024-05-14 10:18   ` [thermal: thermal/fixes] " thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 13/15] arm64: dts: mediatek: mt8188: add lvts definitions Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 14/15] thermal/drivers/mediatek/lvts_thermal: add MT8188 support Nicolas Pitre
2024-05-14 10:18   ` [thermal: thermal/fixes] thermal/drivers/mediatek/lvts_thermal: Add " thermal-bot for Nicolas Pitre
2024-04-02  3:25 ` [PATCH v2 15/15] arm64: dts: mediatek: mt8188: add default thermal zones Nicolas Pitre
2024-04-04 15:16   ` Daniel Lezcano
2024-05-20 13:19     ` Julien Panis
2024-05-21 11:10     ` Julien Panis
2024-05-21 11:31       ` Daniel Lezcano
2024-05-21 14:07         ` AngeloGioacchino Del Regno
2024-05-21 14:15           ` Julien Panis
2024-04-02  3:31 ` [PATCH v3 00/15] Mediatek thermal sensor driver support for MT8186 and MT8188 Nicolas Pitre
2024-04-23  9:06 ` Daniel Lezcano
2024-04-23  9:22 ` AngeloGioacchino Del Regno
2024-05-20 12:53   ` Julien Panis
2024-05-20 15:16     ` AngeloGioacchino Del Regno
2024-05-20 13:18   ` Julien Panis
2024-05-20 15:17     ` AngeloGioacchino Del Regno

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=171568193401.10875.1393372785699330172.tip-bot2@tip-bot2 \
    --to=tip-bot2@linutronix.de \
    --cc=amitk@kernel.org \
    --cc=daniel.lezcano@linaro.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=npitre@baylibre.com \
    --cc=rui.zhang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).