From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932682AbcI3Ixs (ORCPT ); Fri, 30 Sep 2016 04:53:48 -0400 Received: from merlin.infradead.org ([205.233.59.134]:50104 "EHLO merlin.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932467AbcI3Ixj (ORCPT ); Fri, 30 Sep 2016 04:53:39 -0400 Date: Fri, 30 Sep 2016 10:53:34 +0200 From: Peter Zijlstra To: Alan Stern Cc: "Paul E. McKenney" , Will Deacon , linux-kernel@vger.kernel.org, mingo@kernel.org, dhowells@redhat.com Subject: Re: [PATCH locking/Documentation 1/2] Add note of release-acquire store vulnerability Message-ID: <20160930085334.GE5016@twins.programming.kicks-ass.net> References: <20160929191858.GD14933@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23.1 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Sep 29, 2016 at 03:36:38PM -0400, Alan Stern wrote: > > > If you execute P0 and P1 concurrently and one store of each 'wins' the > > > LWSYNC of either is null and void, and therefore P2 is unordered and can > > > observe r2==0. > > Not so. lwsync instructions cannot be "voided". I distinctly remember there being a case (smp_wmb()) where the lwsync would disappear if the store was lost.