From: Wei Yongjun Date: Wed, 26 Dec 2018 11:28:24 +0000 (+0000) Subject: hwmon: (lm80) Fix missing unlock on error in set_fan_div() X-Git-Tag: v4.19.25~9 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=82f39f0219441075bdba1aa3e14b5d4b1fa0b481;p=platform%2Fkernel%2Flinux-rpi3.git hwmon: (lm80) Fix missing unlock on error in set_fan_div() commit 07bd14ccc3049f9c0147a91a4227a571f981601a upstream. Add the missing unlock before return from function set_fan_div() in the error handling case. Fixes: c9c63915519b ("hwmon: (lm80) fix a missing check of the status of SMBus read") Signed-off-by: Wei Yongjun Signed-off-by: Guenter Roeck Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/hwmon/lm80.c b/drivers/hwmon/lm80.c index 0e30fa0..f9b8e3e 100644 --- a/drivers/hwmon/lm80.c +++ b/drivers/hwmon/lm80.c @@ -393,8 +393,10 @@ static ssize_t set_fan_div(struct device *dev, struct device_attribute *attr, } rv = lm80_read_value(client, LM80_REG_FANDIV); - if (rv < 0) + if (rv < 0) { + mutex_unlock(&data->update_lock); return rv; + } reg = (rv & ~(3 << (2 * (nr + 1)))) | (data->fan_div[nr] << (2 * (nr + 1))); lm80_write_value(client, LM80_REG_FANDIV, reg);