[PATCH] hwmon: (mcp9982) Propagate one-shot polling errors

Nikhil Gurudasani posted 1 patch 1 month, 1 week ago
drivers/hwmon/mcp9982.c | 2 ++
1 file changed, 2 insertions(+)
[PATCH] hwmon: (mcp9982) Propagate one-shot polling errors
Posted by Nikhil Gurudasani 1 month, 1 week ago
When a device is in standby, the driver starts a one-shot conversion and
polls the BUSY flag before reading temperature, alarm, or fault data.
The poll result is currently ignored. Therefore, a timeout or a
status-register read failure can be hidden by a later successful read,
causing stale data to be returned as valid.

Return the polling error before reading the requested attribute.

Fixes: e2fe950f34e5 ("hwmon: add support for MCP998X")
Cc: stable@vger.kernel.org
Signed-off-by: Nikhil Gurudasani <nikhilgurudasani314@gmail.com>
---
 drivers/hwmon/mcp9982.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/hwmon/mcp9982.c b/drivers/hwmon/mcp9982.c
index 9e19e2697e25..3918dc36c946 100644
--- a/drivers/hwmon/mcp9982.c
+++ b/drivers/hwmon/mcp9982.c
@@ -395,6 +395,8 @@ static int mcp9982_read(struct device *dev, enum hwmon_sensor_types type, u32 at
 					       reg_status, !(reg_status & MCP9982_STATUS_BUSY),
 					       MCP9982_WAKE_UP_TIME_US,
 					       MCP9982_WAKE_UP_TIME_US * 10);
+				if (ret)
+					return ret;
 				break;
 			}
 			break;

base-commit: f7c9176d2326eacae3a87fa3f5214a78c818cc07
-- 
2.43.0
Re: [PATCH] hwmon: (mcp9982) Propagate one-shot polling errors
Posted by Guenter Roeck 1 month, 1 week ago
On Wed, Aug 19, 2026 at 11:37:01PM +0530, Nikhil Gurudasani wrote:
> When a device is in standby, the driver starts a one-shot conversion and
> polls the BUSY flag before reading temperature, alarm, or fault data.
> The poll result is currently ignored. Therefore, a timeout or a
> status-register read failure can be hidden by a later successful read,
> causing stale data to be returned as valid.
> 
> Return the polling error before reading the requested attribute.
> 
> Fixes: e2fe950f34e5 ("hwmon: add support for MCP998X")
> Cc: stable@vger.kernel.org
> Signed-off-by: Nikhil Gurudasani <nikhilgurudasani314@gmail.com>

Applied.

Thanks,
Guenter