diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index 8918271f9e85b20eff09e84398bc74b54645819d..5a33282181d84acf90d9ae4b4e9cdd738603aecf 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -3193,6 +3193,8 @@ regulator_register(const struct regulator_desc *regulator_desc, unset_regulator_supplies(rdev); scrub: + if (rdev->supply) + regulator_put(rdev->supply); kfree(rdev->constraints); device_unregister(&rdev->dev); /* device core frees rdev */