Re: [PATCH] ASoC: sun4i: Use PTR_ERR_OR_ZERO to simplify the code

From: Maxime Ripard
Date: Fri Nov 01 2019 - 11:34:58 EST


On Fri, Nov 01, 2019 at 07:55:42PM +0800, zhong jiang wrote:
> On 2019/11/1 17:13, Maxime Ripard wrote:
> > On Thu, Oct 31, 2019 at 10:09:39PM +0800, zhong jiang wrote:
> >> It is better to use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR.
> >>
> >> Signed-off-by: zhong jiang <zhongjiang@xxxxxxxxxx>
> >> ---
> >> sound/soc/sunxi/sun4i-i2s.c | 4 +---
> >> 1 file changed, 1 insertion(+), 3 deletions(-)
> >>
> >> diff --git a/sound/soc/sunxi/sun4i-i2s.c b/sound/soc/sunxi/sun4i-i2s.c
> >> index d0a8d58..72012a6 100644
> >> --- a/sound/soc/sunxi/sun4i-i2s.c
> >> +++ b/sound/soc/sunxi/sun4i-i2s.c
> >> @@ -1174,10 +1174,8 @@ static int sun4i_i2s_init_regmap_fields(struct device *dev,
> >> i2s->field_fmt_sr =
> >> devm_regmap_field_alloc(dev, i2s->regmap,
> >> i2s->variant->field_fmt_sr);
> >> - if (IS_ERR(i2s->field_fmt_sr))
> >> - return PTR_ERR(i2s->field_fmt_sr);
> >>
> >> - return 0;
> >> + return PTR_ERR_OR_ZERO(i2s->field_fmt_sr);
> > I don't find it "better". This couples the error handling and the
> > success case, and it makes it harder to extend in the future.
>
> PTR_ERR_OR_ZERO has implemented the if(IS_ERR(...)) + PTR_ERR. It is
> feasible to replace it and more readable at least now.
>
> As you said, PTR_ERR_OR_ZERO should be removed ? :-(

No, I'm saying that in this context, this change isn't necessary.

Maxime

Attachment: signature.asc
Description: PGP signature