Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp3581234pxk; Mon, 5 Oct 2020 13:32:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJym2vo6t5tACMpIKMXh5p3YbO8l9RLW9QQ2ivrXiq01LZvVCaZ0B9XjxH8nPM445iay6kRb X-Received: by 2002:a05:6402:890:: with SMTP id e16mr1565385edy.272.1601929922367; Mon, 05 Oct 2020 13:32:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601929922; cv=none; d=google.com; s=arc-20160816; b=fl+TBaTPAaXryLoDQ3eNUe8XcRNOb5miIh/xjy4i1KoUlfotmYCict60yV2w/SOCwM 2MGIiiQiRhDE+sLnH5ywb/Gtpr9AdNUsOfN58Gq3onGGuIMvUZoD6reswu7vLYCEu4yP +BaJHxtZjMBtiI/ZBvF1V2nZfUQttypuY59uCJchvkokJC1Bdb1iEEnENz0idtjIxC1z jmSyNgk4JReC71VpGW/aWmzZ3qe8GLXFxCU1MEHk5Wyr/NHRtq/otAmDTkLaSujDFCxO Kupwdt0ivhe46fh3Y0yLdYgbGjZPJCcTBrp+W5ijlevV8vhid8VIkRAuAvW9kXiviO8+ cA9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:in-reply-to:content-disposition :mime-version:references:message-id:subject:cc:to:from:date; bh=dSaCiWrS+lxf/Cd/hjK8sh2KhngT3YRyyPDDFhU1T/8=; b=bXnY8MdWxNhDGOqYm9AObb5sqtZZh4gf6DIBtHtO/EuseKeb+RLkx1rqqgRTSvBkAr 8fp06zKvGbMwX1uekrUSUrLd5NwFEcz328r/mrYcg88SkrF+whmK2b7XJnKFVhszvVdE PA5avlOche2EAA05jTr4Vhzf5nrQCjX0GJg5K8zkqEnMS/4KSDexUnmWSsw1BrJri28P 7tCThGOe32Jy6WIiS2Tr9bv7RgCK3ETSyElki8imq5yKPFGy2m3brp10Igp1KKzmPFWN bHVwWlMqd30XHyHTknpVP3bn32snrWYCGcV9dZER16qpT7Tdvvzv6vM7FS25IQkRvQtP m0QA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dk22si753627edb.258.2020.10.05.13.31.39; Mon, 05 Oct 2020 13:32:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727927AbgJESTu (ORCPT + 99 others); Mon, 5 Oct 2020 14:19:50 -0400 Received: from netrider.rowland.org ([192.131.102.5]:38091 "HELO netrider.rowland.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1726784AbgJESTu (ORCPT ); Mon, 5 Oct 2020 14:19:50 -0400 Received: (qmail 387611 invoked by uid 1000); 5 Oct 2020 14:19:49 -0400 Date: Mon, 5 Oct 2020 14:19:49 -0400 From: Alan Stern To: "Paul E. McKenney" Cc: Luc Maranget , Akira Yokosawa , parri.andrea@gmail.com, will@kernel.org, peterz@infradead.org, boqun.feng@gmail.com, npiggin@gmail.com, dhowells@redhat.com, j.alglave@ucl.ac.uk, dlustig@nvidia.com, joel@joelfernandes.org, viro@zeniv.linux.org.uk, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org Subject: Re: Bug in herd7 [Was: Re: Litmus test for question from Al Viro] Message-ID: <20201005181949.GA387079@rowland.harvard.edu> References: <20201001045116.GA5014@paulmck-ThinkPad-P72> <20201001161529.GA251468@rowland.harvard.edu> <20201001213048.GF29330@paulmck-ThinkPad-P72> <20201003132212.GB318272@rowland.harvard.edu> <045c643f-6a70-dfdf-2b1e-f369a667f709@gmail.com> <20201003171338.GA323226@rowland.harvard.edu> <20201005151557.4bcxumreoekgwmsa@yquem.inria.fr> <20201005155310.GH376584@rowland.harvard.edu> <20201005165223.GB29330@paulmck-ThinkPad-P72> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20201005165223.GB29330@paulmck-ThinkPad-P72> User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Oct 05, 2020 at 09:52:23AM -0700, Paul E. McKenney wrote: > On Mon, Oct 05, 2020 at 11:53:10AM -0400, Alan Stern wrote: > > I tested the new commit -- it does indeed fix the problem. > > Beat me to it, very good! ;-) > > But were you using the crypto-control-data litmus test? I was not. The test I used was what you get by starting from the version of crypto-control-data that had the one-liner in P1, and then replacing P0 with: P0(int *x, int *y) { int r1; r1 = READ_ONCE(*x); smp_mb(); WRITE_ONCE(*y, 1); } Without the new commit this test is allowed; with the new commit it isn't (as we would expect). Also, the graphical output from herd7 shows the data dependency in P1 with the commit, and doesn't show it without the commit. > That one still > gets me Sometimes: > > $ herd7 -version > 7.56+02~dev, Rev: 0f3f8188a326d5816a82fb9970fcd209a2678859 > $ herd7 -conf linux-kernel.cfg ~/paper/scalability/LWNLinuxMM/litmus/manual/kernel/crypto-control-data.litmus > Test crypto-control-data Allowed > States 2 > 0:r1=0; > 0:r1=1; > Ok > Witnesses > Positive: 1 Negative: 4 > Condition exists (0:r1=1) > Observation crypto-control-data Sometimes 1 4 > Time crypto-control-data 0.00 > Hash=10898119bac87e11f31dc22bbb7efe17 > > Or did I mess something up? You didn't mess up anything. That's the whole point of this litmus test: It should be forbidden because it is an example of OOTA, but LKMM allows it. Even with Luc's new commit. Alan