Re: [PATCH v4 1/4] iio: tsl2772: Use devm_add_action_or_reset

From: Jonathan Cameron
Date: Mon Aug 05 2019 - 11:25:37 EST


On Thu, 1 Aug 2019 05:37:31 -0400
Brian Masney <masneyb@xxxxxxxxxxxxx> wrote:

> On Thu, Aug 01, 2019 at 05:33:47AM -0400, Brian Masney wrote:
> > On Thu, Aug 01, 2019 at 03:35:57PM +0800, Chuhong Yuan wrote:
> > > Use devm_add_action_or_reset to remove the call to
> > > tsl2772_disable_regulators_action to simplify the error path.
> > >
> > > Signed-off-by: Chuhong Yuan <hslester96@xxxxxxxxx>
> >
> > For the whole series:
> >
> > Reviewed-by: Brian Masney <masneyb@xxxxxxxxxxxxx>
>
> Oops, I forgot to add this as well:
>
> Tested-by: Brian Masney <masneyb@xxxxxxxxxxxxx>
>
> I tested this on a Nexus 5 phone.
>
> Brian
>
Applied to the togreg branch of iio.git and pushed out as testing.

Now the fact we have a fix in the middle of this series is
a bit unfortunate as it'll mean we need an explicit backport to
take that for stable.

Oh well, if anyone wants it up to them to do the work ;)

Thanks,

Jonathan

>
> >
> > I forgot to mention this before, but next time please use a cover letter
> > if you're sending more than one patch: git format-patch --cover-letter.
> >
> > Brian
> >
> >
> > > ---
> > > Changes in v4:
> > > - Split v3 into three patches.
> > > - Revise description to make it more precise.
> > >
> > > drivers/iio/light/tsl2772.c | 6 +++---
> > > 1 file changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/iio/light/tsl2772.c b/drivers/iio/light/tsl2772.c
> > > index 83cece921843..29cfd8ae2700 100644
> > > --- a/drivers/iio/light/tsl2772.c
> > > +++ b/drivers/iio/light/tsl2772.c
> > > @@ -1807,10 +1807,10 @@ static int tsl2772_probe(struct i2c_client *clientp,
> > > return PTR_ERR(chip->vdd_supply);
> > > }
> > >
> > > - ret = devm_add_action(&clientp->dev, tsl2772_disable_regulators_action,
> > > - chip);
> > > + ret = devm_add_action_or_reset(&clientp->dev,
> > > + tsl2772_disable_regulators_action,
> > > + chip);
> > > if (ret < 0) {
> > > - tsl2772_disable_regulators_action(chip);
> > > dev_err(&clientp->dev, "Failed to setup regulator cleanup action %d\n",
> > > ret);
> > > return ret;
> > > --
> > > 2.20.1