From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751915AbdJYPug (ORCPT ); Wed, 25 Oct 2017 11:50:36 -0400 Received: from mail-sn1nam01on0064.outbound.protection.outlook.com ([104.47.32.64]:30923 "EHLO NAM01-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750923AbdJYPud (ORCPT ); Wed, 25 Oct 2017 11:50:33 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Yuri.Norov@cavium.com; Date: Wed, 25 Oct 2017 18:50:14 +0300 From: Yury Norov To: Clement Courbet Cc: Arnd Bergmann , Rasmus Villemoes , Andrew Morton , Matthew Wilcox , Ingo Molnar , linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: Re [PATCH v2] lib: optimize cpumask_next_and() Message-ID: <20171025155014.ppsu6hkwnhh3fjxp@yury-thinkpad> References: <20171025145938.wpr7spsujounqudk@yury-thinkpad> <20171025152841.6746-1-courbet@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20171025152841.6746-1-courbet@google.com> User-Agent: NeoMutt/20170113 (1.7.2) X-Originating-IP: [50.233.148.156] X-ClientProxiedBy: VI1PR08CA0120.eurprd08.prod.outlook.com (2603:10a6:800:d4::22) To CY4PR0701MB3827.namprd07.prod.outlook.com (2603:10b6:910:94::33) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7a33fd7a-ea46-4a81-da60-08d51bc01e66 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(4534020)(4602075)(4627075)(201703031133081)(201702281549075)(2017052603199);SRVR:CY4PR0701MB3827; X-Microsoft-Exchange-Diagnostics: 1;CY4PR0701MB3827;3:Z27c1ssgGX134tF0ir80d8wQ4BzqPtXzRfBtc01l6LLKtZ6ZhJXjmyRlJuC4BYFuNEH470PJYf1AiQL7jWN5wWLikcRna6JNKJzACiiXdyh9nfKL9W2YolN6yQWDf641fs6sn8XoTnRdPNAL/JVQw1Gb82fK90eDGIf/EJAnS2UA1FXZsN+gEs9yNEe0v6SrRk4ZjZxehL2oIb7/HCior9GULxCR1DDTX2BjpRE+0upRbhHRUm0BqTO3V66yzBx0;25:nEQGM08BEGwx2DsanaUPoS03OdXYs/ZkN+xfX8yTrux2aUY9aq/a0Xv3HSJgu4gdozOrqKNZLnGek5SEIWLUdOkJqH0q/jt6Tr9ysjUERYWoBIRXfS+0RI9GDWt+h66XsdrEzbAEU/GtlmBHhZ59Z17Hi6eBV+SCK3ioCFNACBgEdGPHk1kHY0c5FTOGbvrUvVFk7OZEIga4gAIOhxgiBjQqJgqcMGNyJvBAaBHv0jO/FRL6R8wDXXODqzEFQR6167rP/TBlJVMIpMixBBB6EitEqFXblekraW6JRTzzwPHZp8ozo80/2Ec4yhLx6SPOYquI5oaEQENGFfCI4M2zJw==;31:64rrP5/sKT0S+E+pAA6Wov2DIaBhYNzyh9NEg5FCuRZ+8yUw6jbu7L68Cn0IjNvr2utZ2tW/FIv8OxgNTWzbF7cOl5aA3e2givWR17pVCcfhOvk7RriAo0QR6+kS8Y8hv84hkBRMdY8yq1OHLaDvKlknB7uguuqJajQb1uUbcEYNrtfJPE2DWEZsD9Z4DNHRyOIgs2lOt5r7Z/SAYoDfetO2++bdcbfamkXtTkTrm84= X-MS-TrafficTypeDiagnostic: CY4PR0701MB3827: X-Microsoft-Exchange-Diagnostics: 1;CY4PR0701MB3827;20:HR8Y/LH/ZYZc4V6pss3yHUDvJ9tMVYWTrQhBvso5hwksCodJMbPikhXk1wmnUMU1u5WTpoyvQZIi0DnkL/MGITPHB+cnAY0uITH7a6RDSRydu5etGamvnqahcva4GvJPFcWjIf5npK+y/UsuST7XFrzY0+zwCORJqkoopkIRE2wVOG6bDJKkv7Mrav7G7RuFJVRp7KMy6ZX2wSuXDBEva129jlZL37ZRXg6n8Ph72/WEm/Q04IVCJKV3nA9ederesY3A2JaRbqCEU1cn/HPo0KkMlpX5OM+Knp/prYBLof/GxRYsuBbg0YfiEVHBi2LTaBGOZFwU+SvOD67qP20Ly9Pf78L0TsdkvSayMv1v9ouLsuituVt5DiKUtL4IYo2mKNAbDicUvJ8QruxRbVQ40Wp4qa/IT1AV/AW7NoADjVm0E/IsFRbj+/jaF15zNKK9TD+AA/h+/F7bC89KShXEJ2K4y7iQbSeoSVMQ5ZGOblSDuLnXE3EnpTkCGiR6QATEviSh5G6TREvxLa6gTJh7CpG8d01oW+PeVYmxT/RYNroC1EpQZE30hHBQPFW1zDl3UtOYJNgkxIqpBgorrvsYYlj3uCW/R7m1MLJMkAVQbdE=;4:MZC7scqk1cJjOYsc0z+H4Vc+Q8vermL6i5f3kNNe9XSlNDYZfI2p7n58IpUfI/unEJyqnMNIEmyjcwQoBqSrGRzJo5H9tJ7+tpN6EOTsvd1lSBech6TSaPfgunmzmQvO7sdHO4IYhAssqTF1vfyk2mvJkooUNduakXNQA28pWaKDRyxfXy33hXPgwDIyR2qzO3Odq4PaOBmSIVjhyIWRoNxLzrLmd51YImVYeIx0BPoFxfdYdcX34XPX/YQOtK0W X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(100000703101)(100105400095)(10201501046)(3231020)(3002001)(93006095)(6041248)(20161123562025)(20161123564025)(20161123558100)(20161123560025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:CY4PR0701MB3827;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:CY4PR0701MB3827; X-Forefront-PRVS: 0471B73328 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(6069001)(7916004)(376002)(346002)(51444003)(199003)(51914003)(24454002)(189002)(105586002)(229853002)(8936002)(6916009)(42882006)(106356001)(2950100002)(7736002)(316002)(8676002)(54906003)(9686003)(33646002)(1076002)(58126008)(81166006)(81156014)(47776003)(305945005)(6246003)(16586007)(66066001)(101416001)(5660300001)(97736004)(16526018)(6486002)(72206003)(83506002)(33716001)(53936002)(6666003)(23726003)(189998001)(478600001)(76506005)(3846002)(54356999)(76176999)(68736007)(6116002)(50466002)(50986999)(8666007)(2906002)(25786009)(4326008)(6496005);DIR:OUT;SFP:1101;SCL:1;SRVR:CY4PR0701MB3827;H:localhost;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CY4PR0701MB3827;23:AoQ6UXjYsg0osOkyUSuak2dZxYYELZ3MFe8m2oP?= =?us-ascii?Q?+LoODUmRus0Irdnl/FxiVqwkikvgcHVCQs1wFwd61pYRXIbvHaD0oWv/6W7t?= =?us-ascii?Q?yNH2Hu3JPxZl7SXkz95MO+Efjo/S1RLyh3oZFSgZxFFxlsaKefMJOZptqfa5?= =?us-ascii?Q?n2EHFUrllc/NaNb9FU3K75hVP7Q/dQZY1T0mcX7Yp6/rBMdNDSkvMfZ0n4fz?= =?us-ascii?Q?wROL+sQeXbhviGm667yDOV62zqU6j0Yqi0JxRpUetvtbdbsknW6CAN6rwIIV?= =?us-ascii?Q?A2YuQcCqHlCcVG4UFN2c6LrG2uZqntvmWtKVtzLGO39X71Zy4gnqOl+EHXit?= =?us-ascii?Q?/U2Nn5R94rpWMJU/oNJeDEi8JSQJfO1a0d1jQKnn7pegCjJyzMt/BFL90ryT?= =?us-ascii?Q?DEtaOogzAS/a3SN2YXB309UOHC8fy/saolxmk0UHnoIFJqi6lbxFPdUfC2TH?= =?us-ascii?Q?xQjcy4t5NooAYF+6lYW0mzOSvlw8RJ6HEcKR4tayqw69SeWYv5o/MSsOYJ/A?= =?us-ascii?Q?yRrh2/UEgQnhC22WCgoiKhQgRoS3mn6TajkZCQunBRpI77vxIGfl6TNdY6i0?= =?us-ascii?Q?pKuFd2lq4qbpjEb2jwvci6zOJrGNPtZcPhHpbG6ej2WkhMlbSDjnvKBQ8K7A?= =?us-ascii?Q?TL5oNw6/syGMZAjE0npIlAFsatzzHheu3Zw5jwiTnjE0NEIIC/YrtQlydt77?= =?us-ascii?Q?lHO98mgVQGwmGwtXcjWPbEo796Ipb02MarN4EuG10/APkxyL3qpD5cPMHrOi?= =?us-ascii?Q?9d1c1I0VwcW6qbWbrNWJ1TiOIumyKBdzFtYnBF6bDH2S2ogt7od9nKFRhwKd?= =?us-ascii?Q?yb0+bQtYDF//Y9mObnY+qdRjusn3Gnv0YGCDqe9CPL2wOjWEhSu3Q0O+XucF?= =?us-ascii?Q?F+x3aeE1lolnVv5NU9z8jWUpHls/ha1f9KONS6K4kFbwdS2+XbmEiQnBme7O?= =?us-ascii?Q?Z5BVHxZUCJSzyxUezmi21Yxjy0bq3uVvenowHyIaFOYPOpF0P4MfU1AfDus9?= =?us-ascii?Q?bg9umV8wtgPdKZ4P4H6rNWz8bNDbPD4+jX0h8WrnI4DtCuB1UUKUxhZ4o1xA?= =?us-ascii?Q?wL4vKVZgwJP7wbuAdqwtQztUMTELQlorvwTMsL7IXm8DdZtebASMNFMLTubC?= =?us-ascii?Q?kkjuq5cLQF8cE3EtHYXi1Xic2NybqU7YqRnFXZY19gEVuTePN5dn++skhGSu?= =?us-ascii?Q?zP8rQjn4caus8AsbPGRTTAvV51JqXBfcOqqBA5nAgK2BZOBUCxPgm2PHWMkX?= =?us-ascii?Q?8QMLfeIzbjbVdM7kdzSPni7bEq2a/C1G8PqbsYYxssOhiPrm2HhtV5uYxFZ/?= =?us-ascii?Q?47Tp0T74xCZtZ0Mu5Jbdj9uI=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY4PR0701MB3827;6:A769IETlsk1gC/M2kTIUTYArypQ8aS48USNUIrp/HJmLXMf1Bv6GDQHC/xid2F80PEgMVqXC5EhHrIF8RD2hWnCAFB0xYkSTmjYAmlqCeMfzgx8wsLKQccAOw4x2fM3CaqS0l9NL4j0WA1qGfrOMClnECy90Ot94YESzcIek6HUnV8w5K0pnMxhvalvl4jWZ3MdbZe1cvZy4vsrvecX2L2Ycynl7ycb6pC6q4Sw83sE3l4CIXtuLuLDms63tRrUnguQxUbYyXbFTOpQ4Et/Lb5dtkB4AaxB842nB+iQAEUccvLuxrytGWfpYFreeJE+VBc0mI4oZbk/m48PS4wCiSQ==;5:BRdeHAmxJF5XZ+332Q4kQdGMQGivMTJ/WCjwZDyE2jiVTlPhUHvPMaW1ONJxfefpPqSgdWlD2B5w9z7jUm3FNAeVEBYbYWVgZmR8lG6IRPhes0pErpxEOhhPW4wOEci2i4S7O/pX7TeBUEyPh9+Iig==;24:ipF8lg2BSg/nqyzyOQI44dYtX/f0NrrAimzFy1/DlHTWfhHxaAl5j3Ex06ZX81H0r8aEAuUMdlTiDU+rDwMf4yWqmOuVNXNVkSQCbTKSHjY=;7:zmstIB4C4yEf5IM5slv0+4lbLIUdSMxZA2zANs8XIufP9v36dF3PnqWwe/vmhWGdz8VdRrWjoqqFxDvXTKyDTpgGT/bgJ8K9gs7kLPCr9gojtoWRv4v3+6ZeOfcw6uCiiHnQeB9Un3olrfrQa20vQDNKoL6iZzv5yHJKXC9QxzGx23l+Oz2R7CXi0R6ECO/08XMmFO49uSK17BX5XeXxXnLqfVEJA372b/UUTDYcz80= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Oct 2017 15:50:28.5677 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7a33fd7a-ea46-4a81-da60-08d51bc01e66 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR0701MB3827 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Oct 25, 2017 at 05:28:41PM +0200, Clement Courbet wrote: > Thanks for the comments Yury. > > > But I'd like also to keep _find_next_bit() consistent with > > _find_next_bit_le() > > Not sure I understand what you're suggesting here: Do you want a > find_next_and_bit_le() or do you want to make _find_next_bit_le() more > like _find_next_bit() ? In the latter case we might just want to merge > it with _find_next_bit() and end up with an extra is_le parameter :) Both ways will work, but I think that extra is_le is too much. _find_next_bit_le() should be the copy of _find_next_bit() with the addition of swapping code. If you don't need find_next_and_bit_le(), don't add it. find_{first,last}_bit() doesn't have LE version, for example. Yury