Re: [PATCH 7/7] regulator: core: Remove loop disabling supplies in regulator_force_disable()

From: Dmitry Osipenko
Date: Mon Nov 19 2018 - 19:59:01 EST


On 20.11.2018 3:26, Douglas Anderson wrote:
> In regulator_force_disable() there was a strange loop that looked like:
>
> while (rdev->open_count--)
> regulator_disable(rdev->supply);
>
> I'm not totally sure what the goal was for this loop, but it seems
> wrong to me. If anything I think maybe we should have been looping
> over our use_count, but even that might be a little strange. For now
> let's just remove the code and we can add something back in if someone
> can explain what's expected.
>
> Fixes: f8702f9e4aa7 ("regulator: core: Use ww_mutex for regulators locking")

Seems this "fixes" tag is incorrect, isn't it? The "ww_mutex" patch didn't touch this code.


> Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
> ---
>
> drivers/regulator/core.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
> index 2eda87520832..963081aba17a 100644
> --- a/drivers/regulator/core.c
> +++ b/drivers/regulator/core.c
> @@ -2738,10 +2738,6 @@ int regulator_force_disable(struct regulator *regulator)
>
> regulator_unlock_dependent(rdev, &ww_ctx);
>
> - if (rdev->supply)
> - while (rdev->open_count--)
> - regulator_disable(rdev->supply);
> -
> return ret;
> }
> EXPORT_SYMBOL_GPL(regulator_force_disable);
>