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@xxxxxxxxxx> >> --- >> 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@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html