From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933014AbbGJRfw (ORCPT ); Fri, 10 Jul 2015 13:35:52 -0400 Received: from mail-am1on0099.outbound.protection.outlook.com ([157.56.112.99]:17680 "EHLO emea01-am1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932450AbbGJRfm (ORCPT ); Fri, 10 Jul 2015 13:35:42 -0400 Authentication-Results: kernel.org; dkim=none (message not signed) header.d=none; Message-ID: <55A00251.8020405@ezchip.com> Date: Fri, 10 Jul 2015 13:35:13 -0400 From: Chris Metcalf User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Peter Zijlstra , Russell King - ARM Linux CC: Geert Uytterhoeven , "linux-kernel@vger.kernel.org" , Linux-Arch , Richard Henderson , Vineet Gupta , Will Deacon , =?windows-1252?Q?H=E5vard_Skinnemoen?= , Miao Steven , David Howells , Richard Kuo , Tony Luck , James Hogan , Ralf Baechle , "James E.J. Bottomley" , Benjamin Herrenschmidt , Heiko Carstens , "David S. Miller" , Ingo Molnar Subject: Re: [RFC][PATCH 23/24] atomic: Collapse all atomic_{set,clear}_mask definitions References: <20150709172855.564686637@infradead.org> <20150709175310.229218215@infradead.org> <20150710103945.GH19282@twins.programming.kicks-ass.net> <559FC9CC.6000400@ezchip.com> <20150710134256.GS7557@n2100.arm.linux.org.uk> <20150710162739.GN19282@twins.programming.kicks-ass.net> In-Reply-To: <20150710162739.GN19282@twins.programming.kicks-ass.net> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [12.216.194.146] X-ClientProxiedBy: BY2PR09CA0044.namprd09.prod.outlook.com (10.242.234.172) To AM2PR02MB0772.eurprd02.prod.outlook.com (25.163.146.16) X-Microsoft-Exchange-Diagnostics: 1;AM2PR02MB0772;2:MqMq6AEVneEyIZs+EhA424r9rNJhS4D3MiTHDEoZnrUbk8tAm9/Z42U2PAuMtFqt;3:aCoOE8AyX3V33gEiMOWIamXfM+RKpDCfA3rXzN15F0xbVr8LXidond0YuPWyeLCw9G+nRAAQV+RJ75YFHJd189jsrJyU6wOC1+9SWfmFM2HOArdPd7KqYFI6HSjruzES7AKp0/mgAvGy1noN2b4d6w==;25:Qzp51FZqwP4WHp5y4NVnYd/vgKM97QUc8ZhbEfMeX32+r+88XRikGXDldLjV8+woOXhdj1ZZ+GxOd3BoBOMoHftOaPGql1NZixLJ5wx+M1Zw3Ex5ZQolspOCBqEdXT9ItxQOJ/+BG5nxWaDR26F6yI82uK/RaDG+1m/Vv43l6/6DKIVNY7rgT4MlxPbpLdJ/Sj/8Ri6eIlISonFO/dB+pvLLMu+LIe3wGBYEvO4vRhtmgmdw7O3/iMkp0uwuJLA9REhu1erMbmDcCP9/zj/H5Q==;20:x5s/5B1xxYGkO9YUFV/nou21XpDkXYLHlL4PP2hbqLfqbnw8fYYsoQLpURAtgJeNp6iXTpnhHCFaQwDJ9ZKtwpiaFeds08tv5xuy5ENf3JLZFPRokPUYxNCsO01qMTS8623GkEBymU36DnWYx/HGxSG/0CuEJcif86a0JUdkXjM= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:AM2PR02MB0772; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:AM2PR02MB0772;BCL:0;PCL:0;RULEID:;SRVR:AM2PR02MB0772; X-Microsoft-Exchange-Diagnostics: 1;AM2PR02MB0772;4:e2fI7DTe/mLaIYDo4NrdyjQmXZKojAFZvuMf0QoJ4Yhs1xg7EeNCMLGOILta7EgsHIJpdr6Ceic61gLUpUeZ03iWFrdyhflPwvFEnr95dMV0l6oWU48sVFa3OkUkyyaflRQbpKLdn6nRDvNMaSA/HVgnnRGAJC4i9gej5Mr3VWECr/y7aDVx1PkUahs3rTSxq1sq5FjIx/OanYogAD+kKkXYRpdBb9bPNNBpoSsWThv7CYdIdGKxI3KY07NukIRSTgAFCwojJQReCnzi8mUCaTrPhLsUmX/YNstCpbtk+9c= X-Forefront-PRVS: 06339BAE63 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(6049001)(24454002)(479174004)(377454003)(66066001)(15975445007)(5001770100001)(36756003)(23746002)(42186005)(93886004)(92566002)(87266999)(4001350100001)(86362001)(2950100001)(47776003)(122386002)(65956001)(65816999)(87976001)(5001960100002)(62966003)(77156002)(50466002)(80316001)(50986999)(76176999)(54356999)(33656002)(19580395003)(40100003)(65806001)(46102003)(83506001)(189998001)(59896002)(64126003)(77096005)(142933001)(18886065003);DIR:OUT;SFP:1101;SCL:1;SRVR:AM2PR02MB0772;H:[10.7.0.41];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;AM2PR02MB0772;23:/RMzmga6W6P+FP2N9z7DPkQRycJ9RzcS84nXZ?= =?Windows-1252?Q?ovOWzv20ETIidSBrMsHkoiTAklqtxLd1ISHRHf/+9ZK2bG4VzuK7HvZg?= =?Windows-1252?Q?fdZQphZ6kne26xqROben/5nQoBbhB076r8L1wq3DCCugGE1alCgpxzo9?= =?Windows-1252?Q?rHquybMja/uUJBrLwsSjrfh6sl89DP5CCCbN/y1uCYesTC5Vo8KaUMWj?= =?Windows-1252?Q?3n5larJ8vYrU8RMLCCJHIEYNdWsBMpvlqPz80K3YrU+Z/qR40ubQDce2?= =?Windows-1252?Q?nl5dhTAK00ZQ30wJw8hAdms0FTisOwg4oC4iRuNsYjFTJTj8et8lUT8F?= =?Windows-1252?Q?s1G3SxS14OncrR43JyoqpR/e7Sk/N5l+GLqCACf47XTxVy0/+tM838ku?= =?Windows-1252?Q?LhUwdSGCzJ8UTlYiARpd5JyIuEwKptwcjUnkWBuUsA3UWucf/ZiV5sv+?= =?Windows-1252?Q?Nw9fSH7ByKf4SttAKPCJ6/frEp7+iFywi/nGhJTIa9uTjsGGS8adWRKe?= =?Windows-1252?Q?UNQ/FH6qv0N5GEWOZ6lL4i0yMQWg9oFlqRvYHe3kKC/smLGgVgCdJgk3?= =?Windows-1252?Q?vMTxox9at8aCMaKZIf8aLJ2o1MkwHTLLgpC/iM2ku8Y6C43LcIqx9PTG?= =?Windows-1252?Q?1De/GVKSAIkkDh/e2djohUYQFC0i6cRUQi+LEKq47UAK6YnuYV5Afytg?= =?Windows-1252?Q?BPofQfp4IJjqhSMD4pLWiu1aNw8lMhnNzgosCgxvrtgHEhMNsIIUAi4E?= =?Windows-1252?Q?TYpSlv4KcYXTBmwbibJ49PiPNNQWtvZOr9/e8a2haxv94zk+TS0l754y?= =?Windows-1252?Q?fW+drvW8FrZyCzhCv+/XY9wGckOUhFIEeCG0CgMVEliQE7bPOOiD8dz9?= =?Windows-1252?Q?0r1VGyyaxe4sPAA5fHv7DtLpzC+VU6XK8Lmd2954JjweSVSwied4n7Zj?= =?Windows-1252?Q?ejJfJbXl+85LiAspTXukOHY5MqcwtLLGjjunPBY6mkSydRyzxPS9I6oR?= =?Windows-1252?Q?Ec3yJBet+9EOpxkTrUPc3NBb+sCSSpUnqiqCKAOvIHdTKMosXXPGVELA?= =?Windows-1252?Q?1VwuhOTFduftcaZtcLp9Y7mcXddTbh8EGb3WeX8PZmSKdeSulab04K3M?= =?Windows-1252?Q?JnJciZpRu9xnXyh3tNRLEH0V+XWekjU5+mzEJWk+ktMNyOjnA4q8bPHM?= =?Windows-1252?Q?G+f6jbZXCCJ5SEiMUPCHlgtUf6wmNA=3D?= X-Microsoft-Exchange-Diagnostics: 1;AM2PR02MB0772;5:j9OPnId4NBipRg/lxE10QBiyP0AgZajWJrZNH7jRNPU3meWYs99hplmOwdOcFsiTxlxODazx10py52rKONt6vSSjwhhy+dfPdMoMDYE1Nb2uerJjeoXg0yisoNpYsjn5u3/sMRmwm3flaaJFCnCDYw==;24:8w2B3FHhnZKg2lb2JFghuk2lpdq4vZ1EXrHNptnt1Fm68Ot9nGvYzng54JowQtl/9Ftbwp5F9Ts0sw3X8fyZqPU+xX93yTgH2UaZ1kSnBjs=;20:FfAcgN0X9Gnire5xQsb9JcCj7v3ho6ONvmqNZzUUdy4Yet0OZlahqN/SR5xVJJ7R36mdizpm6iBVaboBgaY4MA== SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: ezchip.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jul 2015 17:35:34.0566 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM2PR02MB0772 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 07/10/2015 12:27 PM, Peter Zijlstra wrote: > On Fri, Jul 10, 2015 at 02:42:56PM +0100, Russell King - ARM Linux wrote: >> The obvious question though is whether we have an established name for this >> operation elsewhere in the kernel, and whether we should have consistency. > Consistency is good. > >> In include/linux, we already have (grepping for 'and_*not'): >> >> include/linux/nodemask.h:#define nodes_andnot(dst, src1, src2) \ >> include/linux/bitmap.h:extern int __bitmap_andnot(unsigned long *dst, const unsigned long *bitmap1, >> include/linux/cpumask.h:static inline int cpumask_andnot(struct cpumask *dstp, >> >> We also have: >> >> include/linux/signal.h:#define _sig_andn(x,y) ((x) & ~(y)) >> >> which seems to be the only instance of "andn" in include/. > How about I rename the _sig_andn one to _sig_andnot, and go with > atomic_andnot, to match the *mask functions. I'll respin my patch to just tweak tilepro's "andn" to use "andnot" as well while I'm at it, then. Making "andnot" a stand-alone patch would cause conflicts so it might as well go in with your change. -- Chris Metcalf, EZChip Semiconductor http://www.ezchip.com