From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933098AbcIPSSB (ORCPT ); Fri, 16 Sep 2016 14:18:01 -0400 Received: from mail-db5eur01on0130.outbound.protection.outlook.com ([104.47.2.130]:5746 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750871AbcIPSRx (ORCPT ); Fri, 16 Sep 2016 14:17:53 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=peda@axentia.se; Subject: Re: [PATCH v2 0/4] gpio: fix an incorrect lockdep warning To: Wolfram Sang , Bartosz Golaszewski References: <1474041765-17818-1-git-send-email-bgolaszewski@baylibre.com> <20160916172621.GA1426@katana> CC: Linus Walleij , Alexandre Courbot , Andy Shevchenko , Vignesh R , Yong Li , "Geert Uytterhoeven" , Peter Zijlstra , Ingo Molnar , linux-i2c , linux-gpio , LKML From: Peter Rosin Organization: Axentia Technologies AB Message-ID: Date: Fri, 16 Sep 2016 19:45:26 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <20160916172621.GA1426@katana> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [217.210.101.82] X-ClientProxiedBy: AM4PR0101CA0032.eurprd01.prod.exchangelabs.com (10.167.254.42) To AM5PR0201MB2308.eurprd02.prod.outlook.com (10.169.243.7) X-MS-Office365-Filtering-Correlation-Id: 4a0fc0d2-4c7f-433a-2943-08d3de5943fc X-Microsoft-Exchange-Diagnostics: 1;AM5PR0201MB2308;2:2ELzgx6QcRJEWJHCFb4X2F8FnnEpMx/WSW27vb38kAcHvMOC+pkcwiX+qjE8a48vZdADwCarmLsiWBz6XXmX0vQrd734/s7CXDX/p95tUZogFD2D348eOQ93cYvzveFWygwkHHnFcrWwIQ3YJzQAMxBgx2R5/WjAPW8MnReXYzzb5K7noDoQ0rLkk9HWTPIb;3:gfPBiOUnRWROO/Km0XOnhGoAwpnLoi6XDIh29/Hx9bvdd5yLAgBwUYC/cYSNkXxHq/Yv974PlQ93sYecX3tEP+s6rFAGUDdRW9CSeKc4YGDFmjBtc/GKdEIfv3Pu/eNj;25:HQ6LiqErNDsJ1KEYS6oVrT4hHFjCt1K12vKoC/SzJAAM69f3iXUq1rhbJ1DXlmTZwaS/PXKd6wsK9Xt7uqPtjdnLRfIbYlPKKktNx4zyRvCAdw5wV2Wd6A86/tMdu2JhWFAq3iJzVRmIVah2umSI5CqqZ5ajTLBRlwyD3AD9HWhYen/xlNanV/gHo/uVT3xOMq1XtQPqGgCSLoVdoDCkV0xJGQXfuZkE46ZwWXrAAbOm3/YToH0azEzBfOEWAc31pKBFq4VuPXmFQV3A5Bkh61PbUR56U9dSZK0H4+ThyKqluTB2d+gcDx+QrL7uAtaC/6lYMKbxXKJ/OCbPGKPR9Ek9KbP824/FLottOj4/VFYKTfgtuGGUuubrQS+jcLNMmY8VE0dj9PpQSI3ice3NeSc8nI0AsjrfgpURyjX4QQs= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AM5PR0201MB2308; X-Microsoft-Exchange-Diagnostics: 1;AM5PR0201MB2308;31:YuTrQTgY7nzd/8mSRx9KgxnHspK1JY/QaD+ls2ss8Ns3mxckfIEdVOqoOZFTFO1rcEXFi4+xK2+uv9L6cDHOrslQg7EOaAAMUMdnvn25pVmsrdv7IvA4xDO1Id/mElEJ4LVz+0ITzt5eybB/Ov/ytVc1hDZM+bihi/DaYKd90usWbJBjHTRH6TaDfdyOA/MhjPP3jaNtAae6Lwie2IoKWdFi3GWWGz+TpNzJyokzl+0=;4:9uyTnkiYxY1OsowWpwsnUXtiaAbRD9Zff0+lwInJrory/lBwmLnVTGZ9ArGWht4Hv3lNcDsBjuFA3kZigRnkSuiE5qFXjCS0RRn6yydUSVH+EwV2STFvAqKDYjN9fXvZahxqX0JyyMA++9wpSWcqtV9c7ST24DaRMXFc4khslZgH1cPBZmA/WA9CKbxGbUfaakYpBw3WYOpaOYx4P1ehTMgHTIldxJ725vBkB22AaSdgrayxGawQiemfMy64C/6r2YoZNjU7wmc+TYYnUc5X8gCs+2yC8rsCojBk+4cxSF+izYbk/Y5v5IvFfZ4iJ6NoUhw/UNXiVKkrXj0SwHtLrkE1nSI/xLYEUfRxfiUQRp3clJWyHZPFi1TAnXYUVJhTrRFQoENtPn0LcNGseEPjJqCVfNaLVoBKyVFJq8ZxlYQ= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6042046)(6043046);SRVR:AM5PR0201MB2308;BCL:0;PCL:0;RULEID:;SRVR:AM5PR0201MB2308; X-Forefront-PRVS: 0067A8BA2A X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(6049001)(7916002)(199003)(24454002)(189002)(377424004)(6116002)(7736002)(23746002)(77096005)(189998001)(305945005)(47776003)(92566002)(83506001)(106356001)(105586002)(8676002)(74482002)(36756003)(64126003)(230700001)(33646002)(81156014)(31696002)(68736007)(65826007)(4001350100001)(117156001)(31686004)(97736004)(76176999)(81166006)(50986999)(86362001)(2906002)(54356999)(5001770100001)(42186005)(4326007)(101416001)(7416002)(586003)(2950100001)(5660300001)(65956001)(50466002)(66066001)(3846002)(65806001)(7846002)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:AM5PR0201MB2308;H:[192.168.0.125];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;AM5PR0201MB2308;23:NDsTboVSnHuNkLTs9k2lw89bdThQIcLBl4b?= =?Windows-1252?Q?Zjveq8xtB1n9geSBX/MluLcFiMX4HXpUe8akR7xaPhwYwOeX2JpPfBk8?= =?Windows-1252?Q?F4MrkEhvHYrGXjk278ikAAUpCy1qr19whnbrkUjWlMnNkpilvkRfdTT1?= =?Windows-1252?Q?MMZqQ1Arfz9ml9G2rVhOnG3hKI/OxcuKFHeMwy1hLKC+aAhY/Bqt6Ez2?= =?Windows-1252?Q?0Qi+CvZkFWNteQ04J3Zm9nLQEmn96wEnGbPM22I/VifQWjqYn/uGh/w5?= =?Windows-1252?Q?K7M4Ozm9mVDwhagKFCEoVwpto83tbZUIJPLzOWkNETiSEip5gv+0LAWQ?= =?Windows-1252?Q?hms9cQsPT05HpUu4t0QBdplfXXot/92GMM7Q+DG+yTFu/zG3HCqxSNLX?= =?Windows-1252?Q?n8XpZ7RpTZImcjXWs6tTMTQfyFWsyN/bRKNUAODJAxO14ycUXAO2Couy?= =?Windows-1252?Q?zj85ouoRraKbZlyroEWV4N1//i5mhWu74SG1YSIQ8Zlvd/pfoUhfsYDc?= =?Windows-1252?Q?SYsqG0PYMh2cNn9vvN3CJ8cxt7U9vp4CAhySm8YPfwbRcnQbPgvV4Ajb?= =?Windows-1252?Q?CM5ac7JieQ0tVZm3EBrz01i8d5VgHzY+0qmwqrcFEODvGAxLcIuTQvcs?= =?Windows-1252?Q?iRsajK3yqzyFXK0+NtcBq5Ujh20TUqay/+WQHDspSyA5+r2B1poqLiVX?= =?Windows-1252?Q?If2ZDGfX4hVIsjuluXr1T3QFJZZOwtxnLkULEnzL75U7YRtymhAJE5YY?= =?Windows-1252?Q?u2cKaA3KeeykjrBi/s0tq4xuP6gNx9/U/70elcJ9kVUltH2cCqK1MP3V?= =?Windows-1252?Q?yxzEao0MLr7AwyS2G5G/f0PWR2XzYFLC20KFVa6PNb4Cze54SMcz/mu2?= =?Windows-1252?Q?5hYN8DiXGK3W94GH6u+hjGQ9UqSZd1T5AxhVTMgSB4Fob2IaC+MU52uX?= =?Windows-1252?Q?ieIm+XBDSJZK+garAIC6jyjzzwRo6KZpgk/8C77Z+S0gTp9Vqv19AkLE?= =?Windows-1252?Q?YXl/bYV1xhd4Xm143BH+7VBrqAMSB/jd5ui4NGn9uoPs7rPBVpffah/c?= =?Windows-1252?Q?AqtCPBQQ00nInnSiq129b9gDKDrV9DlA2m5F7rkw3vARi4OcaKOdhSpP?= =?Windows-1252?Q?yH/unkbyF7l2ZaOc7vrIe4er3dFTPAydrgR4l+3Hg5N8RC0NVDoe1Fq4?= =?Windows-1252?Q?xYNPB6K71W1RDAOmILTUmscKMS9xtzaAbYQHJpaiCTamSpfY636I/n7d?= =?Windows-1252?Q?6W1QoRtmQoIjCqIsKXErMi0XUG8hzOH8uG6vVXkd9svS0ORAn6M+/AYJ?= =?Windows-1252?Q?ha9NUdAexED6UbdnKeItVPg4VTBkHCLwyZ7s+Um+N+PFaLZzhP/3zbIR?= =?Windows-1252?Q?panJAN5NgswSyEPnIfO5ZEDE1QCZFCplPEw=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;AM5PR0201MB2308;6:n4JYM/BkSQJ7QNBwOlq+WLIEiR898594AG1WQYR3DleMMaR24gWJqOoa4SjzuD3hoM0LrgyBmVWoAtiETbBQ9otZ0fMnnAEULpHdfE/03gpPbfVsJc43PHb1PQdoaqUFZc8B5wKJIjR5a3ud9jBdxiuFd8Fxg+wQCZeeOOK8wzUdl7jOW+nd/b+B8+/2pWCw/kP+6QZRge3pogg74yfK5TAXpZh0qI78PATwCrmFqwYcuTqSXO596mI+TSbWAAMPzJFrwA07vZY03K0WPoMz5kGDWsghWqYrY/lUVnpvyI0cWOIGYoaT0orSRaB0aJVb;5:ajHsfFMRoYKT2dnAxw3l9b8Qyv9JqTxspWWq8m2wBJWAKwzcankaKyO67HeQPPO+vhdB7X217jjPC1xAd7zvonEUBU0lbjOvS8d4sTi5zowgCa/1xYBSjCRuJ4C0cjQM+d4p73yFzHiWVdaYY03pzA==;24:DAXYU1hUIG5ivzXQYTmVE2vb/CgeKLAVIIQ60e893uiRDG4R21Dd3YtDaW4mzURg3L/YSHHCDCnIvRuvHV4iwcnrQstC68xiofATT9e9NTg=;7:7aearGpC64l87hO0P2HzYAK6kDabs8VGyTHqHu36+SzC7WBZ3qciVGLGS4IOlnMafD10qag58zDsA9zUHpn3FjmKILoF1FTyt21V7YsFEcjL5FVg7m9jgHkq3NJuo7A5ss3fIGwTx2CNtph26gi+h0e5V9mQeiBNwrn2oGLAf6/15j9C38m3JVxB1X579Yl+oOmb8KSFrSdnJ1pQqT7WLD22xWJs1FXSHIpZQ3aO0BTi2MWoeySN/zJR8q3mly4E SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: axentia.se X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Sep 2016 17:45:34.1748 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0201MB2308 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2016-09-16 19:26, Wolfram Sang wrote: > On Fri, Sep 16, 2016 at 06:02:41PM +0200, Bartosz Golaszewski wrote: >> If an I2C GPIO multiplexer is driven by a GPIO provided by an expander >> when there's a second expander using the same device driver on one of >> the I2C bus segments, lockdep prints a deadlock warning when trying to >> set the direction or the value of the GPIOs provided by the second >> expander. >> >> This series exports an already existing function from i2c-core as >> public API and reuses it in pca953x to pass a correct lock subclass >> to lockdep. > > Looks good from my POV, but will wait for Peter to comment. > > If accepted, I'd think this should go via my I2C tree and I would like > to ask Linus to ack patch 4. D'accord, everyone? Since it is not clear if "Peter" is me or PeterZ (I suspect PeterZ...), I'm just adding that it all looks fine by me as well, just to prevent this from being held up by a misunderstanding. It does unconditionally add a new function to i2c-core that is only ever used if lockdep is enabled, but it is tiny and I'm not bothered by that memory waste. Cheers, Peter