From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dmitry Osipenko Subject: Re: [PATCH 7/7] regulator: core: Remove loop disabling supplies in regulator_force_disable() Date: Tue, 20 Nov 2018 03:58:55 +0300 Message-ID: <3c226e1e-f707-c005-8c46-c0445f60a9a8@gmail.com> References: <20181120002654.1891-1-dianders@chromium.org> <20181120002654.1891-7-dianders@chromium.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20181120002654.1891-7-dianders@chromium.org> Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org To: Douglas Anderson , Mark Brown Cc: Bjorn Andersson , evgreen@chromium.org, swboyd@chromium.org, ryandcase@chromium.org, David Collins , linux-arm-msm@vger.kernel.org, Liam Girdwood , linux-kernel@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org 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 > --- > > 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); >