[PATCH 09/21] hwmon: add mutex unlock in error cases

Naga RADHESH Y naga.radheshy at stericsson.com
Tue Feb 14 06:46:56 UTC 2012


In some error cases mutexunlock is missed,
so add mutex unlock in error cases.

ST-Ericsson ID: 371373
ST-Ericsson Linux next: NA
ST-Ericsson FOSS-OUT ID: Trivial

Signed-off-by: Naga Radhesh <naga.radheshy at stericsson.com>
---
 drivers/hwmon/lsm303dlh_a.c  |    1 +
 drivers/hwmon/lsm303dlh_m.c  |    1 +
 drivers/hwmon/lsm303dlhc_a.c |    5 ++++-
 3 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/drivers/hwmon/lsm303dlh_a.c b/drivers/hwmon/lsm303dlh_a.c
index d144686..cda627b 100644
--- a/drivers/hwmon/lsm303dlh_a.c
+++ b/drivers/hwmon/lsm303dlh_a.c
@@ -764,6 +764,7 @@ static ssize_t lsm303dlh_a_store_range(struct device *dev,
 		ddata->shift_adjust = SHIFT_ADJ_8G;
 		break;
 	default:
+		mutex_unlock(&ddata->lock);
 		return -EINVAL;
 	}
 
diff --git a/drivers/hwmon/lsm303dlh_m.c b/drivers/hwmon/lsm303dlh_m.c
index 6fbd3df..96291af 100644
--- a/drivers/hwmon/lsm303dlh_m.c
+++ b/drivers/hwmon/lsm303dlh_m.c
@@ -517,6 +517,7 @@ static ssize_t lsm303dlh_m_store_range(struct device *dev,
 		z_gain = Z_GAIN_8_1;
 		break;
 	default:
+		mutex_unlock(&ddata->lock);
 		return -EINVAL;
 	}
 
diff --git a/drivers/hwmon/lsm303dlhc_a.c b/drivers/hwmon/lsm303dlhc_a.c
index a8b1cd9..8b7e2fe 100644
--- a/drivers/hwmon/lsm303dlhc_a.c
+++ b/drivers/hwmon/lsm303dlhc_a.c
@@ -314,8 +314,10 @@ static ssize_t lsm303dlhc_a_store_range(struct device *dev,
 
 	error = lsm303dlhc_a_write(ddata, CTRL_REG4, ddata->range,
 	"CTRL_REG4");
-	if (error < 0)
+	if (error < 0) {
+		mutex_unlock(&ddata->lock);
 		return error;
+	}
 
 	switch (val) {
 	case LSM303DLHC_A_RANGE_2G:
@@ -331,6 +333,7 @@ static ssize_t lsm303dlhc_a_store_range(struct device *dev,
 		ddata->shift_adjust = SHIFT_ADJ_16G;
 		break;
 	default:
+		mutex_unlock(&ddata->lock);
 		return -EINVAL;
 	}
 
-- 
1.7.4.3



More information about the kernel mailing list