diff options
author | Dmitry Osipenko <digetx@gmail.com> | 2019-10-25 03:22:39 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2019-10-28 13:14:45 +0000 |
commit | 26c2c997aa1a6c5522f6619910ba025e53e69763 (patch) | |
tree | 5db862e157bedb652052ba0d9989b92e3ad94945 /drivers | |
parent | 55d5f62c3fa005a6a8010363d7d1855909ceefbc (diff) | |
download | blackbird-op-linux-26c2c997aa1a6c5522f6619910ba025e53e69763.tar.gz blackbird-op-linux-26c2c997aa1a6c5522f6619910ba025e53e69763.zip |
regulator: core: Release coupled_rdevs on regulator_init_coupling() error
This patch fixes memory leak which should happen if regulator's coupling
fails to initialize.
Fixes: d8ca7d184b33 ("regulator: core: Introduce API for regulators coupling customization")
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Link: https://lore.kernel.org/r/20191025002240.25288-1-digetx@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/regulator/core.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index a46be221dbdc..51ce280c1ce1 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -5198,6 +5198,7 @@ unset_supplies: regulator_remove_coupling(rdev); mutex_unlock(®ulator_list_mutex); wash: + kfree(rdev->coupling_desc.coupled_rdevs); kfree(rdev->constraints); mutex_lock(®ulator_list_mutex); regulator_ena_gpio_free(rdev); |