Messages in this thread | | | Date | Sat, 22 Sep 2012 01:59:44 +0100 | From | Paul Parsons <> | Subject | Re: [PATCH] pda_power: remove ac_draw_failed goto and label |
| |
Hello Anton,
On 22/09/12 00:51, Anton Vorontsov wrote: > On Fri, Sep 21, 2012 at 01:56:43AM +0100, Paul Parsons wrote: >> A previous patch added the ac_draw_failed goto and label to >> pda_power_probe(). The goto would be invoked after a failed call to >> regulator_get(). >> >> However the way ac_draw is used - always after a check for NULL - >> suggests that a failed call to regulator_get() was not fatal. >> >> This patch removes the ac_draw_failed goto and label, partly reverting >> the previous patch. >> >> This patch also removes the assignment of an error code to ret after a >> failed call to regulator_get(), since the error code is now never used. >> >> Signed-off-by: Paul Parsons <lost.distance@yahoo.com> >> Cc: Philipp Zabel <philipp.zabel@gmail.com> >> --- >> drivers/power/pda_power.c | 3 --- >> 1 files changed, 0 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/power/pda_power.c b/drivers/power/pda_power.c >> index d3be834d..7df7c5f 100644 >> --- a/drivers/power/pda_power.c >> +++ b/drivers/power/pda_power.c >> @@ -284,9 +284,7 @@ static int pda_power_probe(struct platform_device *pdev) >> ac_draw = regulator_get(dev, "ac_draw"); >> if (IS_ERR(ac_draw)) { >> dev_dbg(dev, "couldn't get ac_draw regulator\n"); >> - ret = PTR_ERR(ac_draw); >> ac_draw = NULL; >> - goto ac_draw_failed; > > For some reason you have a bit different code, so your patch is not based > on the battery tree. (In my tree ret and ac_draw assignments are swapped.) > Maybe that's because I had to manually redo your first patch... > > Anyway, I repeated your patch by hand again and thus applied it.
Yes, in my first patch I had swapped the ret and ac_draw assignments when I moved the regulator_get() call to before the update_charger() call. This was because the original order of the assignments:
ac_draw = NULL; ret = PTR_ERR(ac_draw);
is obviously incorrect; the ac_draw assignment overwrites the error code that should be returned by PTR_ERR().
Anyway, thank you for sorting this out!
Regards, Paul
> Thank you! > >> } >> >> update_status(); >> @@ -416,7 +414,6 @@ ac_supply_failed: >> regulator_put(ac_draw); >> ac_draw = NULL; >> } >> -ac_draw_failed: >> if (pdata->exit) >> pdata->exit(dev); >> init_failed: >> -- >> 1.7.8.6
| |