From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Zijlstra Subject: Re: [PATCH -v2 14/33] locking,m68k: Implement atomic_fetch_{add,sub,and,or,xor}() Date: Thu, 16 Jun 2016 14:49:49 +0200 Message-ID: <20160616124949.GF30921@twins.programming.kicks-ass.net> References: <20160531101925.702692792@infradead.org> <20160531102642.333689893@infradead.org> <20160616101309.GD30921@twins.programming.kicks-ass.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from merlin.infradead.org ([205.233.59.134]:39063 "EHLO merlin.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751562AbcFPMuR (ORCPT ); Thu, 16 Jun 2016 08:50:17 -0400 Content-Disposition: inline In-Reply-To: Sender: linux-arch-owner@vger.kernel.org List-ID: To: Andreas Schwab Cc: Geert Uytterhoeven , Linus Torvalds , Ingo Molnar , Thomas Gleixner , Will Deacon , Paul McKenney , boqun.feng@gmail.com, waiman.long@hpe.com, =?iso-8859-1?Q?Fr=E9d=E9ric?= 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 Ja On Thu, Jun 16, 2016 at 02:43:29PM +0200, Andreas Schwab wrote: > Peter Zijlstra writes: > >> > +/* > >> > + * 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? > >> > + */ > No, there is nothing to fix here. OK, care to elucidate? Clearly I need help reading this. I'm more than happy to remove the comment, but I would like to better understand. From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from merlin.infradead.org ([205.233.59.134]:39063 "EHLO merlin.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751562AbcFPMuR (ORCPT ); Thu, 16 Jun 2016 08:50:17 -0400 Date: Thu, 16 Jun 2016 14:49:49 +0200 From: Peter Zijlstra Subject: Re: [PATCH -v2 14/33] locking,m68k: Implement atomic_fetch_{add,sub,and,or,xor}() Message-ID: <20160616124949.GF30921@twins.programming.kicks-ass.net> References: <20160531101925.702692792@infradead.org> <20160531102642.333689893@infradead.org> <20160616101309.GD30921@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Sender: linux-arch-owner@vger.kernel.org List-ID: To: Andreas Schwab Cc: Geert Uytterhoeven , Linus Torvalds , Ingo Molnar , Thomas Gleixner , Will Deacon , Paul McKenney , boqun.feng@gmail.com, waiman.long@hpe.com, =?iso-8859-1?Q?Fr=E9d=E9ric?= 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 Message-ID: <20160616124949.v5OD5ln7y2kGVJbXP6takXIuqlTxsqVyVs4irIIHL64@z> On Thu, Jun 16, 2016 at 02:43:29PM +0200, Andreas Schwab wrote: > Peter Zijlstra writes: > >> > +/* > >> > + * 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? > >> > + */ > No, there is nothing to fix here. OK, care to elucidate? Clearly I need help reading this. I'm more than happy to remove the comment, but I would like to better understand.