Received: by 10.192.165.156 with SMTP id m28csp502548imm; Fri, 13 Apr 2018 03:01:06 -0700 (PDT) X-Google-Smtp-Source: AIpwx48IukB987n0ez4S9ouxye5sBhq2BWSNtMXSttFbhndieCMczeCmTxMijOOizDMOTlu3+2UY X-Received: by 10.101.77.67 with SMTP id j3mr3683466pgt.210.1523613666653; Fri, 13 Apr 2018 03:01:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523613666; cv=none; d=google.com; s=arc-20160816; b=0jhaMBpCIjGabIMsMTmhk4EeS6e+QM6FPyL1GS0iVfmu94DrAj2q4BAVXLDKnAhmdZ lkQplzlXRSbEJFPXjM8TfiHaw/lhEzOZZsEiJX2zyRWBrdvKSD/gH0fmk7b3HvWZxgJD XYVV4ew4merDDl4pr7/nugeUwJ0XAbKGZbIgEZjT7kFYY+KJfJ+aUojXcvvllXNz/oO6 m0VgKCOxa/jbCemlUBLiZe+fF1mc8+5RPXl+pSjH2lMLFzJWxttU1kijQH75XG2vz6rf 2ztPsqWPymCL+z5VrRZVdSSBB3KdLLlvvbmoANy1LT90h4/tIj1yScxdC+I8piXTsz// A+ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=hstxfq+nJH7nYb6JiM8J+4pFB1OBRDjJQeIYyMoPQ4s=; b=EvGKl5fm7oJ6Dh9FBm8aehLCQHvqcV5U048ZxjYPx7rI07UhyJABr8tIu89rAQdCbL DwGkMTV5m4wTWQ5hW3cPFKdxZpaBmSvvMFFybCCbRZde++vH+xVtiu/IJQ8ZifJeAOiI zhE2OeJlm7LqmDzl5XWm81KDOq4Pt2xii81Q6kv+sRqgluoUGwhV/Ild8g7dCmJOFPzp plWgY19Y6fRIF7BSyGEkaspUz5qYJxyrpfdI43SSDMCkz6AqRTRarU2ruWsrLogsdAli ibk2RsKdCFNEt8i3ePO8DD/A2cFH5i1nt7dzFm3QI+JL006f3DWdfEXvlGW16BLNsHmt zgYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=AEbnaigZ; 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 c7-v6si4988897plo.597.2018.04.13.03.00.52; Fri, 13 Apr 2018 03:01:06 -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; dkim=pass header.i=@amarulasolutions.com header.s=google header.b=AEbnaigZ; 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 S1754071AbeDMJzA (ORCPT + 99 others); Fri, 13 Apr 2018 05:55:00 -0400 Received: from mail-wm0-f45.google.com ([74.125.82.45]:36367 "EHLO mail-wm0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752223AbeDMJy6 (ORCPT ); Fri, 13 Apr 2018 05:54:58 -0400 Received: by mail-wm0-f45.google.com with SMTP id x82so3143039wmg.1 for ; Fri, 13 Apr 2018 02:54:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=hstxfq+nJH7nYb6JiM8J+4pFB1OBRDjJQeIYyMoPQ4s=; b=AEbnaigZf2MJU/wk8wVD7fgATXP8SDnfCrmyob+Ls0L+aHgc/x3ToOvWkFblYsV09c f9B/LuMWG9IcWkJ5ZhgdoUj4xcwzzCmu8nGlxSJ+AUsfE9ybBBex+4gEf0iXAB8I6q8n z1NXaQBMnFatrOxBXwb3m2XifLI86OoXrpFwY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=hstxfq+nJH7nYb6JiM8J+4pFB1OBRDjJQeIYyMoPQ4s=; b=KnlJF7ESImoVo711juulThoNJgX94Vxzpw+OT9hVssf9ivg3T/10nPZ/5Wa0TfRlOj jS3lmBlt005FY3xpKfLsN66a78NyIKM3wUi6exNSvA2H9IOvLwqua+XuC7YKIO7SntcE SHU7qM/Tx2Qqro/Qi36eagWZY5sZ+dWlp+zYnlWm2FIoF4NDTlx2nRMx9XMrJQ7j0kd2 SJYiMK7O3nu+b8X9WQvaNhQsJe76gNrGeesDnILe3WXuqByNRV0gQhZ5tQPbtjNxVmb1 IEcQPonTObXtwQMfanaX+u0o+FiIxvYi+sqPh9kpaGoenUW1IsyWTJWZu0g2Twk9o9WL Fr9Q== X-Gm-Message-State: ALQs6tCCGtdR5S8krfWZ0wq7IHWFp5qO2gn+PkmW/n4zAwwCQbXbAbdT jUXFWMK8DZ6MHIEEl/SkzAsXsQ== X-Received: by 10.28.133.197 with SMTP id h188mr2946215wmd.18.1523613296878; Fri, 13 Apr 2018 02:54:56 -0700 (PDT) Received: from andrea ([213.209.242.222]) by smtp.gmail.com with ESMTPSA id k82sm1085252wmf.7.2018.04.13.02.54.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 13 Apr 2018 02:54:56 -0700 (PDT) Date: Fri, 13 Apr 2018 11:54:48 +0200 From: Andrea Parri To: "Paul E. McKenney" Cc: Paolo Bonzini , linux-kernel@vger.kernel.org, Alan Stern , Andrea Parri , Will Deacon , Peter Zijlstra , Boqun Feng , Nicholas Piggin , David Howells , Jade Alglave , Luc Maranget , Akira Yokosawa Subject: Re: [PATCH] memory-model: fix cheat sheet typo Message-ID: <20180413095448.GA10490@andrea> References: <1523292618-10207-1-git-send-email-pbonzini@redhat.com> <20180409184258.GP3948@linux.vnet.ibm.com> <20180410203214.GA19606@linux.vnet.ibm.com> <8cbda122-6aa3-365b-fd09-52dca0644cbd@redhat.com> <20180410213434.GC3948@linux.vnet.ibm.com> <156ac07b-7393-449f-518a-6b1c2cff8efb@redhat.com> <20180412092303.GA6044@andrea> <20180412112155.GA9154@andrea> <20180412211836.GG3948@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180412211836.GG3948@linux.vnet.ibm.com> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Apr 12, 2018 at 02:18:36PM -0700, Paul E. McKenney wrote: > On Thu, Apr 12, 2018 at 01:21:55PM +0200, Andrea Parri wrote: > > > > The litmus test that first comes to my mind when I think of cumulativity > > (at least, 'cumulativity' as intended in LKMM) is: > > > > WRC+pooncerelease+rmbonceonce+Once.litmus > > Removing the "cumul-fence* ;" from "let prop" does cause this test to be > allowed, so looks plausible. > > > for 'propagation', I could mention: > > > > IRIW+mbonceonces+OnceOnce.litmus > > And removing the "acyclic pb as propagation" causes this one to be allowed, > so again plausible. > > > (both tests are availabe in tools/memory-model/litmus-tests/). It would > > be a nice to mention these properties in the test descriptions, indeed. > > Please see below. Matching what I had in mind ;) thanks! Andrea > > Thanx, Paul > > > You might find it useful to also visualize the 'valid' executions (with > > the main events/relations) associated to each of these tests; for this, > > > > $ herd7 -conf linux-kernel.cfg litmus-tests/your-test.litmus \ > > -show all -gv > > > > (assuming you have 'gv' installed). > > ------------------------------------------------------------------------ > > commit 494f11d10dd7d86e4a381cbe79e77f04cb0cee04 > Author: Paul E. McKenney > Date: Thu Apr 12 14:15:57 2018 -0700 > > EXP tools/memory-model: Flag "cumulativity" and "propagation" tests > > This commit flags WRC+pooncerelease+rmbonceonce+Once.litmus as being > forbidden by LKMM cumulativity and IRIW+mbonceonces+OnceOnce.litmus as > being forbidden by LKMM propagation. > > Suggested-by: Andrea Parri > Signed-off-by: Paul E. McKenney > > diff --git a/tools/memory-model/litmus-tests/IRIW+mbonceonces+OnceOnce.litmus b/tools/memory-model/litmus-tests/IRIW+mbonceonces+OnceOnce.litmus > index 50d5db9ea983..98a3716efa37 100644 > --- a/tools/memory-model/litmus-tests/IRIW+mbonceonces+OnceOnce.litmus > +++ b/tools/memory-model/litmus-tests/IRIW+mbonceonces+OnceOnce.litmus > @@ -7,7 +7,7 @@ C IRIW+mbonceonces+OnceOnce > * between each pairs of reads. In other words, is smp_mb() sufficient to > * cause two different reading processes to agree on the order of a pair > * of writes, where each write is to a different variable by a different > - * process? > + * process? This litmus test exercises LKMM's "propagation" rule. > *) > > {} > diff --git a/tools/memory-model/litmus-tests/README b/tools/memory-model/litmus-tests/README > index 6919909bbd0f..178941d2a51a 100644 > --- a/tools/memory-model/litmus-tests/README > +++ b/tools/memory-model/litmus-tests/README > @@ -23,7 +23,8 @@ IRIW+mbonceonces+OnceOnce.litmus > between each pairs of reads. In other words, is smp_mb() > sufficient to cause two different reading processes to agree on > the order of a pair of writes, where each write is to a different > - variable by a different process? > + variable by a different process? This litmus test is an example > + that is forbidden by LKMM propagation. > > IRIW+poonceonces+OnceOnce.litmus > Test of independent reads from independent writes with nothing > @@ -121,6 +122,7 @@ WRC+poonceonces+Once.litmus > WRC+pooncerelease+rmbonceonce+Once.litmus > These two are members of an extension of the MP litmus-test class > in which the first write is moved to a separate process. > + The second is an example that is forbidden by LKMM cumulativity. > > Z6.0+pooncelock+pooncelock+pombonce.litmus > Is the ordering provided by a spin_unlock() and a subsequent > diff --git a/tools/memory-model/litmus-tests/WRC+pooncerelease+rmbonceonce+Once.litmus b/tools/memory-model/litmus-tests/WRC+pooncerelease+rmbonceonce+Once.litmus > index 97fcbffde9a0..5bda4784eb34 100644 > --- a/tools/memory-model/litmus-tests/WRC+pooncerelease+rmbonceonce+Once.litmus > +++ b/tools/memory-model/litmus-tests/WRC+pooncerelease+rmbonceonce+Once.litmus > @@ -5,7 +5,8 @@ C WRC+pooncerelease+rmbonceonce+Once > * > * This litmus test is an extension of the message-passing pattern, where > * the first write is moved to a separate process. Because it features > - * a release and a read memory barrier, it should be forbidden. > + * a release and a read memory barrier, it should be forbidden. This > + * litmus test exercises LKMM cumulativity. > *) > > {} >