Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753197AbbGNOAc (ORCPT ); Tue, 14 Jul 2015 10:00:32 -0400 Received: from e38.co.us.ibm.com ([32.97.110.159]:38420 "EHLO e38.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753171AbbGNOA3 (ORCPT ); Tue, 14 Jul 2015 10:00:29 -0400 X-Helo: d03dlp01.boulder.ibm.com X-MailFrom: paulmck@linux.vnet.ibm.com X-RcptTo: linux-kernel@vger.kernel.org Date: Tue, 14 Jul 2015 07:00:14 -0700 From: "Paul E. McKenney" To: Will Deacon Cc: Peter Zijlstra , "linux-arch@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Benjamin Herrenschmidt Subject: Re: [RFC PATCH v2] memory-barriers: remove smp_mb__after_unlock_lock() Message-ID: <20150714140014.GD3717@linux.vnet.ibm.com> Reply-To: paulmck@linux.vnet.ibm.com References: <20150713140915.GD2632@arm.com> <20150713142109.GE2632@arm.com> <20150713155447.GB19282@twins.programming.kicks-ass.net> <20150713175029.GO2632@arm.com> <20150713202032.GZ3717@linux.vnet.ibm.com> <20150713222346.GE19282@twins.programming.kicks-ass.net> <20150713230405.GB3717@linux.vnet.ibm.com> <20150714100429.GC15448@arm.com> <20150714124540.GC3717@linux.vnet.ibm.com> <20150714125146.GJ16213@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150714125146.GJ16213@arm.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15071414-0029-0000-0000-00000B37FF8D Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2201 Lines: 47 On Tue, Jul 14, 2015 at 01:51:46PM +0100, Will Deacon wrote: > Hi Paul, > > On Tue, Jul 14, 2015 at 01:45:40PM +0100, Paul E. McKenney wrote: > > On Tue, Jul 14, 2015 at 11:04:29AM +0100, Will Deacon wrote: > > > Given that RCU is currently the only user of this barrier, how would you > > > feel about making the barrier local to RCU and not part of the general > > > memory-barrier API? > > > > In theory, no objection. Your thought is to leave the definitions where > > they are, mark them as being used only by RCU, and removing mention from > > memory-barriers.txt? Or did you have something else in mind? > > Actually, I was thinking of defining them in an RCU header file with an > #ifdef CONFIG_POWERPC for the smb_mb() version. Then you could have a big > comment describing the semantics, or put that in an RCU Documentation file > instead of memory-barriers.txt. > > That *should* then mean we notice anybody else trying to use the barrier, > because they'd need to send patches to either add something equivalent > or move the definition out again. My concern with this approach is that someone putting together a new architecture might miss this. That said, this approach certainly would work for the current architectures. > > > My main reason for proposing its removal is because I don't want to see > > > it being used (incorrectly) all over the place to order the new RELEASE > > > and ACQUIRE operations I posted separately, at which point we have to try > > > fixing up all the callers or retrofitting some semantics. It doesn't help > > > that memory-barriers.txt lumps things like LOCK and ACQUIRE together, > > > whereas this barrier is currently only intended to be used in conjunction > > > with the former. > > > > Heh! That lumping was considered to be a feature at the time. ;-) > > Oh, I'm sure it was added with good intentions! And we all know which road is paved with good intentions! ;-) Thanx, Paul -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/