> -----Original Message----- > From: Peter Zijlstra [mailto:pet...@infradead.org] > Sent: Friday, September 1, 2017 10:13 PM > To: Reshetova, Elena <elena.reshet...@intel.com> > Cc: Thomas Gleixner <t...@linutronix.de>; linux-kernel@vger.kernel.org; linux- > fsde...@vger.kernel.org; gre...@linuxfoundation.org; v...@zeniv.linux.org.uk; > t...@kernel.org; mi...@redhat.com; han...@cmpxchg.org; lize...@huawei.com; > a...@kernel.org; alexander.shish...@linux.intel.com; epa...@redhat.com; > a...@linux-foundation.org; a...@arndb.de; l...@kernel.org; > keesc...@chromium.org; dvh...@infradead.org; ebied...@xmission.com > Subject: Re: [PATCH 14/15] futex: convert futex_pi_state.refcount to > refcount_t > > On Fri, Sep 01, 2017 at 05:03:55PM +0000, Reshetova, Elena wrote: > > > 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. > > > > But can they make "fast" implementation on ARM that would give stronger > memory guarantees? > > Whatever for?
Well, maybe just by default when arch.-specific implementation is done. But I was just trying to speculate to understand. I will resend this one with new comment added. Still not sure if I need to resend the whole series with updated commits or break this up by individual patches further for the separate merges.