Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp3594imm; Tue, 17 Jul 2018 12:48:20 -0700 (PDT) X-Google-Smtp-Source: AAOMgpe+f3XUk3t/PNYzW/tuTF+jMo8t2haP4k1yO779ncHexQN+yJHpd7eALpGaFbdZeAYaT6Eg X-Received: by 2002:a17:902:8f96:: with SMTP id z22-v6mr2934321plo.190.1531856900767; Tue, 17 Jul 2018 12:48:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531856900; cv=none; d=google.com; s=arc-20160816; b=dln9p6U9RML/6+XK+g7aL3iUDnCQd3qbpXWh+yb7dyvHrBAB/yXmBMaTD+Gaj/lJL6 3+FWPvnG4nEZSalJkxJV8yyAxXIi1Z6eZY+yR59lZq9QZ56E2bgGuJDeboeTd08ZoeFD /nlL/f4czJxAWZ2hajWurT/eSusVYBhe/HNBfVRVJX6Rr+hxaiIpz7Sh7+VoG6Xpj87E 6PyDdvIccIznaPK+NxyptA2H7mtvc0Neld7Ae+RbkggE0exuiObyamuT278vlupg2i83 nNsAPR4CauRmFHycfP+wMYURo/jOtez3LIG7ziawmHn/r7KdCV/XxDLp+9aIgtnBkCj8 gVrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:in-reply-to :subject:cc:to:from:date:arc-authentication-results; bh=L9n8IMrtLRPfBT34PUCAE9ac/9P7ivLt5ScJgB2nrCI=; b=Yz+Zcq4mJUCS21wyc08ku5dNefK7QU9q3BWVP4LiYkCy0g4mJn7hABxvzsG7ln0D9N VjSf9bbNovJ3QtE0OEQ9zlGlkizvWA4miIeVAKbw6bpMLDQOO6hoi6p3pOKGp6NV/2Il kAnGMIJenlXy9nIYHifU7hj//gW63FyTukZg44PPI0gmfoPANzgb+XsxEmwyADSdO6KA AkpIWWVIt0l0QN8OuoZE4BgJ3fYjPcq0iVNAOW2V1/YH2BJWoD40a2msEqNoUzuQ0IXv X3MZSkS5Rh9xY5Vd5I/Ux8oUy9/j1qGui1fwbHX+YJHZDq7zk1fbfF18QCR8w8wdg45e qzXQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id r23-v6si1488703pgk.582.2018.07.17.12.48.05; Tue, 17 Jul 2018 12:48:20 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730362AbeGQUVV (ORCPT + 99 others); Tue, 17 Jul 2018 16:21:21 -0400 Received: from iolanthe.rowland.org ([192.131.102.54]:46018 "HELO iolanthe.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1729720AbeGQUVV (ORCPT ); Tue, 17 Jul 2018 16:21:21 -0400 Received: (qmail 3380 invoked by uid 2102); 17 Jul 2018 15:47:12 -0400 Received: from localhost (sendmail-bs@127.0.0.1) by localhost with SMTP; 17 Jul 2018 15:47:12 -0400 Date: Tue, 17 Jul 2018 15:47:12 -0400 (EDT) From: Alan Stern X-X-Sender: stern@iolanthe.rowland.org To: Peter Zijlstra cc: "Paul E. McKenney" , Linus Torvalds , Michael Ellerman , , Will Deacon , Akira Yokosawa , Boqun Feng , Daniel Lustig , David Howells , Jade Alglave , Luc Maranget , Nick Piggin , Linux Kernel Mailing List Subject: Re: [PATCH v2] tools/memory-model: Add extra ordering for locks and remove it for ordinary release/acquire In-Reply-To: <20180717184255.GM2494@hirez.programming.kicks-ass.net> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 17 Jul 2018, Peter Zijlstra wrote: > Isn't ISYNC the instruction-sync pipeline flush instruction? That is > used as an smp_rmb() here to, together with the control dependency from the > LL/SC, to form a LOAD->{LOAD,STORE} (aka LOAD-ACQUIRE) ordering? That's right. > Where LWSYNC provides a TSO like ordering and SYNC provides a full > transitive barrier aka. smp_mb() (althgouh I think it is strictly > stronger than smp_mb() since it also implies completion, which smp_mb() > does not). What is the difference? That is, can you give a litmus test for "completion" in this sense? > And since both LL/SC-CTRL + ISYNC / LWSYNC are strictly CPU local, they > cannot be used to create RCsc ordering. Yes, sort of -- it depends on whether you consider the store buffer to be part of the CPU. But in any case, you are right that none of these things can create RCsc ordering. Alan