summaryrefslogtreecommitdiffstats
path: root/drivers/regulator
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2013-09-23 16:12:52 +0100
committerMark Brown <broonie@linaro.org>2013-09-24 10:37:55 +0100
commitef60abbb6b406389245225ab4acfe73f66e7d92c (patch)
treee970f214516fc89097c4ed2464f96700756e7867 /drivers/regulator
parent9b92da1f1205bd2591487051a93624dd6c258eef (diff)
downloadop-kernel-dev-ef60abbb6b406389245225ab4acfe73f66e7d92c.zip
op-kernel-dev-ef60abbb6b406389245225ab4acfe73f66e7d92c.tar.gz
regulator: core: Always use return value when regulator_dev_lookup() fails
Ensure that the return value is always set when we return now that the logic has changed for regulator_get_optional() so we don't get missing codes leaking out. Reported-by: Thierry Reding <treding@nvidia.com> Tested-by: Thierry Reding <treding@nvidia.com> Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'drivers/regulator')
-rw-r--r--drivers/regulator/core.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index 088b41a..a40055e 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -1263,12 +1263,13 @@ static struct regulator *_regulator_get(struct device *dev, const char *id,
if (rdev)
goto found;
+ regulator = ERR_PTR(ret);
+
/*
* If we have return value from dev_lookup fail, we do not expect to
* succeed, so, quit with appropriate error value
*/
if (ret && ret != -ENODEV) {
- regulator = ERR_PTR(ret);
goto out;
}
OpenPOWER on IntegriCloud