From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756686AbdEOHhb (ORCPT ); Mon, 15 May 2017 03:37:31 -0400 Received: from mail-db5eur01on0105.outbound.protection.outlook.com ([104.47.2.105]:10419 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1756446AbdEOHha (ORCPT ); Mon, 15 May 2017 03:37:30 -0400 Authentication-Results: the-dreams.de; dkim=none (message not signed) header.d=none;the-dreams.de; dmarc=none action=none header.from=axentia.se; From: Peter Rosin To: Wolfram Sang , CC: Peter Rosin , Leon Romanovsky , Subject: [PATCH v2] i2c: mux: only print failure message on error Date: Mon, 15 May 2017 09:40:17 +0200 Message-ID: <1494834017-24678-1-git-send-email-peda@axentia.se> X-Mailer: git-send-email 2.1.4 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [81.224.171.159] X-ClientProxiedBy: AM5PR0201CA0019.eurprd02.prod.outlook.com (10.169.248.29) To DB6PR0202MB2552.eurprd02.prod.outlook.com (10.169.211.10) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7cf2f4d2-8b52-4b24-1b94-08d49b653bcd X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(201703131423075);SRVR:DB6PR0202MB2552; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0202MB2552;3:lA6l8DxUfn7DuM12Ku3aGjjGQ+DSWNubqHyQpPVDoxhI8k15Y0G9TmSROi+2uOOQvqfYdyeBxZH8Rbx4+NecOEHDgncahqwbM3T0SBLjkKWl5Pz1wLbRuNzxlVHHUyJ3DLCBkBwx8tzUj6292V0H95cNbaczN+CvHpUqyc9UJPnlUgPXmH+PcgiKpccPd0URN7VAGV9CyA6S1Fn5jUTxIsfKSQFZGNJErcFILSLBgeT7U2v858A2osFSttTRjMqpqKBJg5ekO3/VvbPS8EsDiaeZuJEzcSYXfon44yTE32c=;25:I5HkWd2ToWzZoKnBT1CrgPxiBwbWZybK7jPMBrKK8lEXfWEDGB0mrNy9xtlhhPzm6+B5UqiiRnYZ1pX60lFBdMy4cRUgMFugJI6RoEDfGz/YPcCkGG8U4Mr+hw5j1x4tX+ih7faiopeueyXVrQvIosTzOoDOutqCMwvvdlPdjyk7hk7nzTvJnd7XcAGK0sSqvtIRrK1EAADi6P+T7/p2UcQvz+RHWqTgAb6j5K50gsCCaDWG2FuWJN1vzr8rVn2cCEGFYc/Fg1QwrywWWzobWGX99iwcgJ0cBTqKz4ycrDYS0PXuezlR7Yg5lp/+W0bECvIihl8+i+vn7SURccyDyuP9Y5Nsni1Y79ong5Kzm3LPXcWky+sdAY+eZTuAWKxSuWebb0MdFiExx4tSbVwiLP9KSjcudmJCMbAL40snR5T/9aH0nQvY+fQ8VSrz8F22hA63prJ52F4l/CQBrbGMrr2Jlp43exbOwDNOAxneiUU= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0202MB2552;31:LjIVKt2+WySANKbhGon5MQrUzcVuDQER+2hcHmQbvhUJQLo2gOR+WZDyiVnc0EuLo8qJEMOtKReQodEKQ3s3b0XBDuU/yXeik6sVusEfpb9LUCFKdyRtP88bV8wGHCBtv4JAE3LAAN+/NibMjfrd4FpOGqeeZRYgHgNIQMZNWi65+WktEBfMFXscuhW2LRMfvA3nJ92chczV2jX0voF0ha2lkA3pT2C7IYo2H/5WrjY= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(93006095)(93001095)(10201501046)(6041248)(2016111802025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123564025)(20161123560025)(20161123555025)(20161123558100)(6072148)(6043046);SRVR:DB6PR0202MB2552;BCL:0;PCL:0;RULEID:;SRVR:DB6PR0202MB2552; X-Microsoft-Exchange-Diagnostics: 1;DB6PR0202MB2552;4:v9tlg6pFi99LKArVCTDW+0/y8kOc3O+VFKkU8NYJKAsWP/81xOEPwmN52AdNc4PxqgNj1RiALrQge5BKA/mwEqLUPZqjSyvXM2qCVN4UBUM67KBUfJm6m9wVrpNca8Z1IhYNAtEZy8LGbQx6r9PTuZMd99DeFFEFf6kLQE0c+ytjwAqG1gXNzYWEQB7LS2c/fOmQbqh7JFa7eyD9yKb4ZDC1m3RuTrR7R0pLFWbwjyrqWOV4ZC/g9OyNFHj/jMoJLODRwBrJ2oBps3mZpGuWOYh+X9txJYOikrt7DuW+WqQWs2WuqepjbQ++T/sExAjtpJFxJb7qiNzIkE4o/V4P0qrbr3y5MXWXOnLxgyFr8tw9N38OLpxhP7Nghpj2QaayGmiOkLYhahTOo4aEI5h9Kn/zYHsrO/ntz871pTXh700daCJ8lzRnDCAQv+zhWTLzm0eVmFs7NHlV9KM1sGAM88UWcFBiN0sSCdEl5z2wiXCOvm52zPCXMrBT/MJdhvm2VXf74Wsl4Pfn/AWXj6Frz8OYMDcvpVMoPqbYURvoEUEFULHLh9FQBlGZ9OgXQdMfxAk/NDq66opo1UhKpIcnFgOiL+PVXkWJXV7/Evm3ZThnSUvtrVPTiDmgE7hHsizWR5QH7Z0/KX0a9pPTLE/8ituQ5yrgCBJkDtDpmSALvjCGCji9i8F8L1RmhSXWzZ1soN9xfHSNJLqvtIBlDGay6p8eEN6ALdGuxfShJ3nLaEo7yv4SK9UzY2JhXQna/m2C7P83IUWUXs2yyAYihyCh/k3ORTa+mKxTxAj62d62u9AR/KJNtID/B6mPlKiONLtSB+7VisUX6MM13+OAM53jmw== X-Forefront-PRVS: 0308EE423E X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(39450400003)(39410400002)(39830400002)(39400400002)(305945005)(81166006)(8676002)(2906002)(50226002)(66066001)(47776003)(189998001)(5660300001)(42186005)(3846002)(6116002)(5003940100001)(478600001)(6666003)(48376002)(50466002)(86362001)(6512007)(6306002)(33646002)(36756003)(6486002)(6506006)(74482002)(50986999)(54906002)(53936002)(4326008)(25786009)(38730400002)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:DB6PR0202MB2552;H:orc.lan;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DB6PR0202MB2552;23:aJQ8xyLQlIstqIKnKYJzn+jqi8EaI7+7US0GwQA?= =?us-ascii?Q?PP8N3AYydEQaDHYf02p60vF92K0la4STBoqtrgdSl7hGcRWu888YRy++mZX6?= =?us-ascii?Q?C3a2pFYVftrvyGxHBH24A5GYYBcv8fxUe+Ifnwek2WOx/EekM8N/T790xVkt?= =?us-ascii?Q?jZMSl2tv0n35z3mS6C4fa5TLgBHZqcU0Lv3ljOwFc+0VzlF5PIbnFrkb/lxz?= =?us-ascii?Q?SQxkad4ExuYkbEeE1z0PLM+9/Qg/4J/rgqewS/+tOKKVQHrW5jk1xe0isNeu?= =?us-ascii?Q?H2IwQAiBiMDgtNtj4jb4c1zejXI6jzAfRwjxXSLY79fRpwgSoBwwxghWLn+m?= =?us-ascii?Q?ZCYtJl8FMg87weIKISKqNeR7EP9OfitMCLSGwCOd3MIp2/2dDVsHOV69Rbiy?= =?us-ascii?Q?D21qQU/loEvGJZwX7NhBzMJy7PWXHP5nd2O4+n8HlH5gMh/R2Ex417KxZg9b?= =?us-ascii?Q?djLO15XpFVLROUMmLIGAdafKj6vcSC07RkY6P1Fbv7OnK447B9YVq51dlUap?= =?us-ascii?Q?bBw8uicNsZwMeLp8cCgNMEUvKboobzPMVTdAq6SLy4ZIhZgAgTJNrqnT8FCJ?= =?us-ascii?Q?2tB5kJ4bJksc6K4ycjuso9mKl9yhfNzCny3GZr7gIifjXDihc966PQTm4cFS?= =?us-ascii?Q?ZeqhMFTOWbAKULBcpr3oeF4vJRsTfSXYQ+o4X1n9hxzo0oJtMjHPaZwjL6Wt?= =?us-ascii?Q?dHi+bwS0URtQ3we8MxTfkiW0dFql2g+wKmJ/OAhh95bTAYoiaH47kh1mzwyH?= =?us-ascii?Q?TaEi7k6jEDiwZKU/T1ah2Z4lGBcYO3NcuWP3szjNGLnWxKQ6iC96zwyIc2Fa?= =?us-ascii?Q?0NptUoa8t/gFOMBq3AMwY9bktjHW3A4Je/2lyz4m2k0GwCpd7qLS0giR6V99?= =?us-ascii?Q?Bc+fVegRJLSlJbavFBmxYUIjjjCqCmFbqDjE9PiIpza3lL+Y86ATSnkHNcS/?= =?us-ascii?Q?3o7+phO3ZFNcplpTaaCgnGSprayIAwMT27c6vrwj1xQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;DB6PR0202MB2552;6:5yT57GlftMXBux9Ud/aEa4IXhU+L8mTXr3Nhtfcq7CMCYreRUZFniwdScboqXvmOn+oKEtqQT1mlCMk2xx9Z0GtHLcCfLhmm+csXjaouC1EDNZyDAwTfG4xu4dVJ1BdrDFo3E8UNal075FPPf/9BV2dBXP4Vgfl8ZsjGOOySD3YpT+XpodZbg9Y53bdEPHmG/xzvpaj8lH1HWHlAcxxX2yHmqTD7Rhoj1rQSX2wh/drnxykaHJzfef9dDqzDgGnO7EZsr9i5P5YOJUcVcEaETDQXt6rW5oRuZA3NjCwv4Qfg9bLPUzXfp8fplGuBFUmsbi1RLMep9PjFF+sEB3QOIdXBImEErVrJ1KTAo38ocAHftkZVonxn9518xJb41L4rTUjlz1VPU2Karp6Lpkuun8LWFM7Jj0mExX3tnNCj32Qh8yu4czFOl3VivWzz1D/vYzhnc5ycfyWdvmfIa2yq3TnaLM9+saLtAic5MBu1vX1KXDhFTg7f3+UjwYEpP5viWvbphbRbCbGTQX0oY73n5Q==;5:tdyxPBJ9+qrm5kqvG5ChZlX2Y9xhEg+F0T7xHAPZFcJo9uVLt0ScAVRSWEUb7tnChWLXT7eBorMa7wA43A89V4txICt2PwwGthYe24ohUYj5EqKzFf8GUVRd2ak8PPsVaHEFpHs1Rlr/OnV30mGCGg==;24:t+F/TXAexOmF0nqVr+yn5fGrr7Nrcz/WdhYm/iQWMH5bI3+a8vJYf35TV5BXzAlMxOnGQgbWjmncrMICKeaQVLDxHWQuUJJUbaDhVseQrVA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DB6PR0202MB2552;7:uGTgvhC25fW8mr0/GRIH6t8LUBzeqOLrdWVWVRgxr/0bCAHwKi0iyB//C0ER1bwGua5sTkFto1nxXDVLtjn2uAR0w6BwmFukkXBRnOqfobt1DiAvhvSQUtWGgPy8d7nzQ7vGRSobbETXaI9Y9+Az3PN2zfdLMsNlwC4+16gzydDgQYQrznY2vlAvq3EKtvf2dIyxmpuR9+pCqufUICO2ibTQRGHmHGPMR0qmIIyi4TIV3pMk1a4QkZOwi20VlcjItmlggA2iZHB1ltfm+GeR056yLvAlRNPbKqPE966nkL2UN61plE6Wd8Eq4/YKY9GHw3V/qzdN7UHdbIsK+8cG8g== X-OriginatorOrg: axentia.se X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 May 2017 07:37:25.7257 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0202MB2552 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 --- drivers/i2c/i2c-mux.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) Wolfram, you can take this one directly if you wish. You can also take [1] (and optionally [2]) directly if you wish. Or just holler and I'll send you a pull request with [1] and this patch for-current. [1] i2c: mux: reg: put away the parent i2c adapter on probe failure https://patchwork.ozlabs.org/patch/759487/ [2] i2c: mux: reg: rename label to indicate what it does https://patchwork.ozlabs.org/patch/759486/ Changes since v1: - Use goto instead of having two kfree, as pointed out by Leon Romanovsky. Cheers, peda diff --git a/drivers/i2c/i2c-mux.c b/drivers/i2c/i2c-mux.c index 26f7237558ba..9669ca4937b8 100644 --- a/drivers/i2c/i2c-mux.c +++ b/drivers/i2c/i2c-mux.c @@ -395,18 +395,20 @@ 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); + goto err_free_priv; + } } 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); + goto err_free_priv; + } } WARN(sysfs_create_link(&priv->adap.dev.kobj, &muxc->dev->kobj, @@ -422,6 +424,10 @@ int i2c_mux_add_adapter(struct i2c_mux_core *muxc, muxc->adapter[muxc->num_adapters++] = &priv->adap; return 0; + +err_free_priv: + kfree(priv); + return ret; } EXPORT_SYMBOL_GPL(i2c_mux_add_adapter); -- 2.1.4