This error path needs to drop the lock before returning. Fixes: afd018716398 ("hwmon: Add AHT10 Temperature and Humidity Sensor Driver") Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> --- drivers/hwmon/aht10.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/hwmon/aht10.c b/drivers/hwmon/aht10.c index c70d8c2d0c1f..2d9770cb4401 100644 --- a/drivers/hwmon/aht10.c +++ b/drivers/hwmon/aht10.c @@ -138,8 +138,10 @@ static int aht10_read_values(struct aht10_data *data) mutex_lock(&data->lock); if (aht10_polltime_expired(data)) { res = i2c_master_send(client, cmd_meas, sizeof(cmd_meas)); - if (res < 0) + if (res < 0) { + mutex_unlock(&data->lock); return res; + } usleep_range(AHT10_MEAS_DELAY, AHT10_MEAS_DELAY + AHT10_DELAY_EXTRA); -- 2.29.2