Message ID | 1494780073-13713-1-git-send-email-peda@axentia.se |
---|---|
State | Superseded |
Headers | show |
On Sun, May 14, 2017 at 06:41:13PM +0200, Peter Rosin wrote: > As is, a failure message is printed unconditionally, which is confusing. > And noisy. > > Fixes: 8d4d159f25a7 ("i2c: mux: provide more info on failure in i2c_mux_add_adapter") > Signed-off-by: Peter Rosin <peda@axentia.se> > --- > drivers/i2c/i2c-mux.c | 24 ++++++++++++++---------- > 1 file changed, 14 insertions(+), 10 deletions(-) > > diff --git a/drivers/i2c/i2c-mux.c b/drivers/i2c/i2c-mux.c > index 26f7237558ba..ccf2ce1836c8 100644 > --- a/drivers/i2c/i2c-mux.c > +++ b/drivers/i2c/i2c-mux.c > @@ -395,18 +395,22 @@ int i2c_mux_add_adapter(struct i2c_mux_core *muxc, > if (force_nr) { > priv->adap.nr = force_nr; > ret = i2c_add_numbered_adapter(&priv->adap); > - dev_err(&parent->dev, > - "failed to add mux-adapter %u as bus %u (error=%d)\n", > - chan_id, force_nr, ret); > + if (ret < 0) { > + dev_err(&parent->dev, > + "failed to add mux-adapter %u as bus %u (error=%d)\n", > + chan_id, force_nr, ret); > + kfree(priv); > + return ret; > + } > } else { > ret = i2c_add_adapter(&priv->adap); > - dev_err(&parent->dev, > - "failed to add mux-adapter %u (error=%d)\n", > - chan_id, ret); > - } > - if (ret < 0) { > - kfree(priv); > - return ret; > + if (ret < 0) { > + dev_err(&parent->dev, > + "failed to add mux-adapter %u (error=%d)\n", > + chan_id, ret); > + kfree(priv); > + return ret; It is better to add goto label, this will give one place for kfree->return code. Thanks > + } > } > > WARN(sysfs_create_link(&priv->adap.dev.kobj, &muxc->dev->kobj, > -- > 2.1.4 >
On 2017-05-15 06:53, Leon Romanovsky wrote: > On Sun, May 14, 2017 at 06:41:13PM +0200, Peter Rosin wrote: >> As is, a failure message is printed unconditionally, which is confusing. >> And noisy. >> >> Fixes: 8d4d159f25a7 ("i2c: mux: provide more info on failure in i2c_mux_add_adapter") >> Signed-off-by: Peter Rosin <peda@axentia.se> >> --- >> drivers/i2c/i2c-mux.c | 24 ++++++++++++++---------- >> 1 file changed, 14 insertions(+), 10 deletions(-) >> >> diff --git a/drivers/i2c/i2c-mux.c b/drivers/i2c/i2c-mux.c >> index 26f7237558ba..ccf2ce1836c8 100644 >> --- a/drivers/i2c/i2c-mux.c >> +++ b/drivers/i2c/i2c-mux.c >> @@ -395,18 +395,22 @@ int i2c_mux_add_adapter(struct i2c_mux_core *muxc, >> if (force_nr) { >> priv->adap.nr = force_nr; >> ret = i2c_add_numbered_adapter(&priv->adap); >> - dev_err(&parent->dev, >> - "failed to add mux-adapter %u as bus %u (error=%d)\n", >> - chan_id, force_nr, ret); >> + if (ret < 0) { >> + dev_err(&parent->dev, >> + "failed to add mux-adapter %u as bus %u (error=%d)\n", >> + chan_id, force_nr, ret); >> + kfree(priv); >> + return ret; >> + } >> } else { >> ret = i2c_add_adapter(&priv->adap); >> - dev_err(&parent->dev, >> - "failed to add mux-adapter %u (error=%d)\n", >> - chan_id, ret); >> - } >> - if (ret < 0) { >> - kfree(priv); >> - return ret; >> + if (ret < 0) { >> + dev_err(&parent->dev, >> + "failed to add mux-adapter %u (error=%d)\n", >> + chan_id, ret); >> + kfree(priv); >> + return ret; > > It is better to add goto label, this will give one place for kfree->return code. I guess that can be argued, but it's going to end up being more lines. Whatever, I'll just repaint the shed. v2 coming up. Cheers, peda -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/i2c/i2c-mux.c b/drivers/i2c/i2c-mux.c index 26f7237558ba..ccf2ce1836c8 100644 --- a/drivers/i2c/i2c-mux.c +++ b/drivers/i2c/i2c-mux.c @@ -395,18 +395,22 @@ int i2c_mux_add_adapter(struct i2c_mux_core *muxc, if (force_nr) { priv->adap.nr = force_nr; ret = i2c_add_numbered_adapter(&priv->adap); - dev_err(&parent->dev, - "failed to add mux-adapter %u as bus %u (error=%d)\n", - chan_id, force_nr, ret); + if (ret < 0) { + dev_err(&parent->dev, + "failed to add mux-adapter %u as bus %u (error=%d)\n", + chan_id, force_nr, ret); + kfree(priv); + return ret; + } } else { ret = i2c_add_adapter(&priv->adap); - dev_err(&parent->dev, - "failed to add mux-adapter %u (error=%d)\n", - chan_id, ret); - } - if (ret < 0) { - kfree(priv); - return ret; + if (ret < 0) { + dev_err(&parent->dev, + "failed to add mux-adapter %u (error=%d)\n", + chan_id, ret); + kfree(priv); + return ret; + } } WARN(sysfs_create_link(&priv->adap.dev.kobj, &muxc->dev->kobj,
As is, a failure message is printed unconditionally, which is confusing. And noisy. Fixes: 8d4d159f25a7 ("i2c: mux: provide more info on failure in i2c_mux_add_adapter") Signed-off-by: Peter Rosin <peda@axentia.se> --- drivers/i2c/i2c-mux.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-)