From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2001:1868:205::9]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 428E91A010A for ; Thu, 1 Oct 2015 22:24:53 +1000 (AEST) Date: Thu, 1 Oct 2015 14:24:40 +0200 From: Peter Zijlstra To: Boqun Feng Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, Ingo Molnar , Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , Thomas Gleixner , Will Deacon , "Paul E. McKenney" , Waiman Long Subject: Re: [RFC v2 4/7] powerpc: atomic: Implement xchg_* and atomic{,64}_xchg_* variants Message-ID: <20151001122440.GP2881@worktop.programming.kicks-ass.net> References: <1442418575-12297-1-git-send-email-boqun.feng@gmail.com> <1442418575-12297-5-git-send-email-boqun.feng@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <1442418575-12297-5-git-send-email-boqun.feng@gmail.com> List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Wed, Sep 16, 2015 at 11:49:32PM +0800, Boqun Feng wrote: > Implement xchg_relaxed and define atomic{,64}_xchg_* as xchg_relaxed, > based on these _relaxed variants, release/acquire variants can be built. > > Note that xchg_relaxed and atomic_{,64}_xchg_relaxed are not compiler > barriers. Hmm, and I note your previous patch creating the regular _relaxed thingies also removes the memory clobber. And looking at the ARM _relaxed patch from Will, I see their _relaxed ops are also not a compiler barrier. I must say I'm somewhat surprised by this level of relaxation, I had expected to only loose SMP barriers, not the program order ones. Is there a good argument for this?