From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754099AbcFPMnx (ORCPT ); Thu, 16 Jun 2016 08:43:53 -0400 Received: from mail-out.m-online.net ([212.18.0.10]:50810 "EHLO mail-out.m-online.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752659AbcFPMnt (ORCPT ); Thu, 16 Jun 2016 08:43:49 -0400 X-Auth-Info: tvPP0E6wtJuD771UGSO8xUH/RjB4/j5/gmasHvEe8dMbn0FCloaxTp06uQGxp266 From: Andreas Schwab To: Peter Zijlstra Cc: Geert Uytterhoeven , Linus Torvalds , Ingo Molnar , Thomas Gleixner , Will Deacon , Paul McKenney , boqun.feng@gmail.com, waiman.long@hpe.com, =?utf-8?B?RnLDqWTDqXJpYw==?= Weisbecker , "linux-kernel\@vger.kernel.org" , Linux-Arch , Richard Henderson , Vineet Gupta , Russell King , Hans-Christian Noren Egtvedt , Miao Steven , Yoshinori Sato , Richard Kuo , Tony Luck , James Hogan , Ralf Baechle , David Howells , "James E.J. Bottomley" , Michael Ellerman , Martin Schwidefsky , Rich Felker , "David S. Miller" , cmetcalf@mellanox.com, Max Filippov , Arnd Bergmann , dbueso@suse.de, Wu Fengguang , linux-m68k Subject: Re: [PATCH -v2 14/33] locking,m68k: Implement atomic_fetch_{add,sub,and,or,xor}() References: <20160531101925.702692792@infradead.org> <20160531102642.333689893@infradead.org> <20160616101309.GD30921@twins.programming.kicks-ass.net> X-Yow: Will this never-ending series of PLEASURABLE EVENTS never cease? Date: Thu, 16 Jun 2016 14:43:29 +0200 In-Reply-To: <20160616101309.GD30921@twins.programming.kicks-ass.net> (Peter Zijlstra's message of "Thu, 16 Jun 2016 12:13:09 +0200") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Peter Zijlstra writes: > On Thu, Jun 16, 2016 at 12:08:27PM +0200, Geert Uytterhoeven wrote: > >> > #ifdef CONFIG_RMW_INSNS >> > >> > +/* >> > + * Am I reading these CAS loops right in that %2 is the old value and the first >> > + * iteration uses an uninitialized value? >> > + * >> > + * Would it not make sense to add: tmp = atomic_read(v); to avoid this? >> > + */ >> > + >> > #define ATOMIC_OP_RETURN(op, c_op, asm_op) \ >> > static inline int atomic_##op##_return(int i, atomic_t *v) \ >> > { \ >> >> Do we want the above comment in the code? > > I figured it would not hurt; is this indeed the case, do we want to fix > it? No, there is nothing to fix here. Andreas. -- Andreas Schwab, schwab@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."