Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753414AbbGaP5W (ORCPT ); Fri, 31 Jul 2015 11:57:22 -0400 Received: from e39.co.us.ibm.com ([32.97.110.160]:36561 "EHLO e39.co.us.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752406AbbGaP5V (ORCPT ); Fri, 31 Jul 2015 11:57:21 -0400 X-Helo: d03dlp01.boulder.ibm.com X-MailFrom: paulmck@linux.vnet.ibm.com X-RcptTo: linux-kernel@vger.kernel.org Date: Fri, 31 Jul 2015 08:57:13 -0700 From: "Paul E. McKenney" To: Peter Zijlstra Cc: linux-kernel@vger.kernel.org, mingo@kernel.org, jiangshanlai@gmail.com, dipankar@in.ibm.com, akpm@linux-foundation.org, mathieu.desnoyers@efficios.com, josh@joshtriplett.org, tglx@linutronix.de, rostedt@goodmis.org, dhowells@redhat.com, edumazet@google.com, dvhart@linux.intel.com, fweisbec@gmail.com, oleg@redhat.com, bobby.prani@gmail.com, dave@stgolabs.net, waiman.long@hp.com Subject: Re: [PATCH tip/core/rcu 19/19] rcu: Add fastpath bypassing funnel locking Message-ID: <20150731155713.GQ27280@linux.vnet.ibm.com> Reply-To: paulmck@linux.vnet.ibm.com References: <20150717232901.GA22511@linux.vnet.ibm.com> <1437175764-24096-1-git-send-email-paulmck@linux.vnet.ibm.com> <1437175764-24096-19-git-send-email-paulmck@linux.vnet.ibm.com> <20150730144455.GZ19282@twins.programming.kicks-ass.net> <20150730153452.GG27280@linux.vnet.ibm.com> <20150730163427.GO25159@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150730163427.GO25159@twins.programming.kicks-ass.net> User-Agent: Mutt/1.5.21 (2010-09-15) X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15073115-0033-0000-0000-00000558ACDF Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1288 Lines: 29 On Thu, Jul 30, 2015 at 06:34:27PM +0200, Peter Zijlstra wrote: > On Thu, Jul 30, 2015 at 08:34:52AM -0700, Paul E. McKenney wrote: > > On Thu, Jul 30, 2015 at 04:44:55PM +0200, Peter Zijlstra wrote: > > > > If the extra read before the cmpxchg() does not hurt, we should do the > > > same for mutex and make the above redundant. > > > > I am pretty sure that different hardware wants it done differently. :-/ > > I think that most archs won't notice since any RmW includes a load of > that variable anyhow. The only case where it can matter is if the RmW is > done outside of the normal cache hierarchy -- like on Power, where the > ll/sc bypasses the L1. Some years back, AMD and Intel variants of x86 had different preferences on this matter. Timings indicated that one or the other of them (I cannot recall which) would get the cacheline shared, then have to get it exclusive, while the other would get it exclusive to begin with. I honestly do not know what the preferences of current Power hardware might be. 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/