diff --git a/[refs] b/[refs] index 81f8cf3d0133..fc1128764ec6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f55205f4d4a8823a11bb8b37ef2ecbd78fb09463 +refs/heads/master: 968c2c1707a3396ccd6e7e6c5ddaf658a6d3bd66 diff --git a/trunk/drivers/regulator/core.c b/trunk/drivers/regulator/core.c index e70dd382a009..046fb1bd8619 100644 --- a/trunk/drivers/regulator/core.c +++ b/trunk/drivers/regulator/core.c @@ -1431,7 +1431,10 @@ void devm_regulator_put(struct regulator *regulator) rc = devres_destroy(regulator->dev, devm_regulator_release, devm_regulator_match, regulator); - WARN_ON(rc); + if (rc == 0) + regulator_put(regulator); + else + WARN_ON(rc); } EXPORT_SYMBOL_GPL(devm_regulator_put);