mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-16 14:02:10 +00:00
regulator: Actually free the regulator in devm_regulator_put()
It turns out that (quite surprisingly) devres_destroy() only undoes the devres mapping, it doesn't destroy the underlying resource, meaning that anything using devm_regulator_put() would leak. While we wait for the new devres_release() which does what we want to get merged open code it in devm_regulator_put(). Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
This commit is contained in:
parent
f55205f4d4
commit
968c2c1707
@ -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);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user