Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752545AbdIANhD (ORCPT ); Fri, 1 Sep 2017 09:37:03 -0400 Received: from merlin.infradead.org ([205.233.59.134]:55094 "EHLO merlin.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752031AbdIANhB (ORCPT ); Fri, 1 Sep 2017 09:37:01 -0400 Date: Fri, 1 Sep 2017 15:36:44 +0200 From: Peter Zijlstra To: "Reshetova, Elena" Cc: Thomas Gleixner , "linux-kernel@vger.kernel.org" , "linux-fsdevel@vger.kernel.org" , "gregkh@linuxfoundation.org" , "viro@zeniv.linux.org.uk" , "tj@kernel.org" , "mingo@redhat.com" , "hannes@cmpxchg.org" , "lizefan@huawei.com" , "acme@kernel.org" , "alexander.shishkin@linux.intel.com" , "eparis@redhat.com" , "akpm@linux-foundation.org" , "arnd@arndb.de" , "luto@kernel.org" , "keescook@chromium.org" , "dvhart@infradead.org" , "ebiederm@xmission.com" Subject: Re: [PATCH 14/15] futex: convert futex_pi_state.refcount to refcount_t Message-ID: <20170901133644.jf57pwuaep6zirxz@hirez.programming.kicks-ass.net> References: <1504095773-22895-1-git-send-email-elena.reshetova@intel.com> <1504095773-22895-15-git-send-email-elena.reshetova@intel.com> <20170901093852.it4d4bxoy2lmojrk@hirez.programming.kicks-ass.net> <2236FBA76BA1254E88B949DDB74E612B6FF6347F@IRSMSX102.ger.corp.intel.com> <20170901123415.s3fxlyeyourz47av@hirez.programming.kicks-ass.net> <2236FBA76BA1254E88B949DDB74E612B6FF63506@IRSMSX102.ger.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2236FBA76BA1254E88B949DDB74E612B6FF63506@IRSMSX102.ger.corp.intel.com> User-Agent: NeoMutt/20170609 (1.8.3) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 963 Lines: 18 On Fri, Sep 01, 2017 at 01:24:16PM +0000, Reshetova, Elena wrote: > > > On Fri, Sep 01, 2017 at 11:05:33AM +0000, Reshetova, Elena wrote: > > > Actually on the second thought: does the above memory ordering differences > > > really apply when we have ARCH_HAS_REFCOUNT? To me it looks like the way > > > how it is currently implemented for x86 is the same way as it is for atomic cases. > > > > Never look to x86 for memory ordering, its boring. > > > > And yes, for the ARM implementation it can certainly make a difference. > > So, yes, what I am trying to say is that it can really depend if you have ARCH_HAS_REFCOUNT > enabled or not and then also based on architecture. Thus I believe is also true for atomic: there > might be differences when you use arch. dependent version of function or not. So the generic one in lib/refcount.c is already weaker on ARM, they don't need to do a ARCH specific 'fast' implementation for the difference to show up.