Received: by 10.223.176.5 with SMTP id f5csp1391998wra; Fri, 9 Feb 2018 19:05:20 -0800 (PST) X-Google-Smtp-Source: AH8x226Lg9SmeGw5bWMIXyWvbw+mctlIz4KN6DLPhLM0u1OLA4meifQoo8AVpVUHoSoC4mPFMf4M X-Received: by 2002:a17:902:bd45:: with SMTP id b5-v6mr2428934plx.301.1518231919978; Fri, 09 Feb 2018 19:05:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518231919; cv=none; d=google.com; s=arc-20160816; b=YotPukF6HoYbp3L0tOOtLJbHnFV7sv9T2AEm9km7NX2123T+UZuIhJRSL1AcMwtQl/ WWdR4MPTvPEZln3E4ydD4e5MJaz45sO7yNiQld2yvLHXnljay29q1fwkRF186CIc3uTb nMhpYvAdZKDM9roioJ1KdvGfuxlQwtjYtw8pb/Yl0n704aQSl6t2v0vzeb2cZOWkt0zO z+Wk2IL8/3aV3+6E/hY8yUdYM9GI76KZ96DUqq6KORvGbcCvX9Y4DPUCWdMsjMe52HL3 AwOA988UXu1ux6pRaZ/YHaWNLULjTWqT1GyCQEQwSbkwIe09gvjUIght5CdAlicrZ9qN paig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature :arc-authentication-results; bh=3Hp+MIp5ben6P7m1D3pbJDFkAt9Nb4OlhQVltGZDzFQ=; b=ZT9REQNt2gKMmd9e6JOlBDool30tvlWjpMooBIz7MYYniBaByTrhEReFrb7WVnH1Nq vH8cy4ZDJtakdaKW2K0JZbPkw31fOASG0lbdynwLqrNR8xjSar35q3VbymVcAR8MjBEH 8AdKu5fLnsD9tjj7kld3g0GPEnGYmO7dTqPzhUjdaR4Y2RnWXWtKIcPQmx/z8f5qHB8c OTIaqKxLyn9ya+Ltt52EzgMkY9B5IjJzLNlh8SB1F7xWD/lVJcWyelPggxFsZegGHlwx 4bMVNBYUStyzFMRKnBdzKFuypKo5bqYvMssL+UmdRe5tX9J4YUYi8RFGd72ll31gViZj 3eGw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=pxDSm6wj; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t17-v6si1518362ply.186.2018.02.09.19.04.53; Fri, 09 Feb 2018 19:05:19 -0800 (PST) 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=@gmail.com header.s=20161025 header.b=pxDSm6wj; 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; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751299AbeBJDDs (ORCPT + 99 others); Fri, 9 Feb 2018 22:03:48 -0500 Received: from mail-pg0-f68.google.com ([74.125.83.68]:46126 "EHLO mail-pg0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751122AbeBJDDp (ORCPT ); Fri, 9 Feb 2018 22:03:45 -0500 Received: by mail-pg0-f68.google.com with SMTP id a11so4874091pgu.13 for ; Fri, 09 Feb 2018 19:03:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=3Hp+MIp5ben6P7m1D3pbJDFkAt9Nb4OlhQVltGZDzFQ=; b=pxDSm6wjWe06MYVQn6mh3503NcKHw2zK9fdIxkKn6YXB59cK4wPtNs7SazdFGZSvcu /o9JYKZzhm9G1bSp57JBAkyWDcRfULE+pCvYGAGQcQabCKYPU1yeCb4mg1RsV9tJRDgx Od9/t8gxbZOoEEXsTwe0C0ovz4FJlMthurJwNYO3TfO6ZId3ugFUobADEpx7H1Y+/p4N LnC6L9n4izWsrLIGhFW6Z5jCGyomhMIp6hKOT35sJj1Xe8lZpwsE64bLSAbwPdv970/u vw7KOFaSXhBy2GfpXzYekehVo3hYc8ovMpZlHceSgkoFYPP74nRfZn8gJWhRrodY4/6W q15w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=3Hp+MIp5ben6P7m1D3pbJDFkAt9Nb4OlhQVltGZDzFQ=; b=PWCJIA5QHTmlENNZES6k2hXqUMbCPGPElUKNA2DCFirzq+5lfPCLmT3N4ViT3Nlj5+ /N8QM9ulfO9vR4EdqQdV64uaFlRC8HJ+q6rzt7loxGcaccQ1NPBQCA07tVWwi4+m0hlC ik0XOGzQWCXbXi2P+HnChIeiU45ZUnZRkyJ064/61uDc/rkXw4uKKGSyPkXht8hD5pri utBG20F/z565G4Rj0RxqjOdngiJUYg1UHQZaBoMi/dB8VJCbFsnIhbWQt2oemLT+KJIs HpscogH29QRazPOC1kW2X1wEIFHYu4Yiw6w8TsDVctKq+2JHaDsdIwoq+7OqHexSwdaF wz5A== X-Gm-Message-State: APf1xPCS228GQK+/Zx/5xAMxXV0j5r3UlJoJOcCRsGEXPBe7Js4tnYj7 BLkzikr8ngySblOb1p0uWeE= X-Received: by 10.99.96.148 with SMTP id u142mr3970631pgb.53.1518231825132; Fri, 09 Feb 2018 19:03:45 -0800 (PST) Received: from [192.168.11.4] (KD106167171201.ppp-bb.dion.ne.jp. [106.167.171.201]) by smtp.gmail.com with ESMTPSA id l64sm9686522pfi.46.2018.02.09.19.03.41 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 09 Feb 2018 19:03:44 -0800 (PST) Subject: Re: [PATCH v2] tools/memory-model: Make compat with herd7 7.47 ("-" -> "_") To: paulmck@linux.vnet.ibm.com Cc: linux-kernel@vger.kernel.org, mingo@kernel.org, stern@rowland.harvard.edu, parri.andrea@gmail.com, will.deacon@arm.com, peterz@infradead.org, boqun.feng@gmail.com, npiggin@gmail.com, dhowells@redhat.com, j.alglave@ucl.ac.uk, luc.maranget@inria.fr, Patrick Bellasi , Akira Yokosawa References: <20180209141832.GA17505@linux.vnet.ibm.com> <20180210010703.GE3617@linux.vnet.ibm.com> From: Akira Yokosawa Message-ID: <261d80f3-5c3d-fc21-ddc7-81f7f204e60d@gmail.com> Date: Sat, 10 Feb 2018 12:03:39 +0900 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: <20180210010703.GE3617@linux.vnet.ibm.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2018/02/10 10:07, Paul E. McKenney wrote: > On Sat, Feb 10, 2018 at 08:46:25AM +0900, Akira Yokosawa wrote: >> >From 7c1f497a9a51e8db1a94c8a7ef0b74b235aaab88 Mon Sep 17 00:00:00 2001 >> From: Akira Yokosawa >> Date: Fri, 9 Feb 2018 04:51:05 -0800 >> Subject: [PATCH v2] tools/memory-model: Make compat with herd7 7.47 ("-" -> "_") >> >> As of herd7 7.47, these '-'s are not permitted and end up in >> errors such as: >> >> File "./linux-kernel.def", line 44, characters 29-30: >> unexpected '-' (in macros) >> >> Partial revert of commit 2d5fba7782d6 ("linux-kernel*: Make RCU >> identifiers match ASPLOS paper") in the repository at >> https://github.com/aparri/memory-model can restore the compatibility >> with herd7 7.47. >> >> Reported-by: Patrick Bellasi >> Suggested-by: Andrea Parri >> Signed-off-by: Akira Yokosawa >> --- >> Paul, >> >> FWIW, this is a squashed version relative to patch 07/10 in the RFC series. > > Thank you, Akira! > > I am going to hold off on this for a bit to see if we can instead get > a new release of herd7, but if we can't. this might well be a very good > way to go. Fair enough. Thanks, Akira > > Thanx, Paul > >> Thanks, Akira >> -- >> tools/memory-model/linux-kernel.bell | 14 +++++++------- >> tools/memory-model/linux-kernel.cat | 2 +- >> tools/memory-model/linux-kernel.def | 8 ++++---- >> 3 files changed, 12 insertions(+), 12 deletions(-) >> >> diff --git a/tools/memory-model/linux-kernel.bell b/tools/memory-model/linux-kernel.bell >> index b984bbd..436791b 100644 >> --- a/tools/memory-model/linux-kernel.bell >> +++ b/tools/memory-model/linux-kernel.bell >> @@ -25,9 +25,9 @@ enum Barriers = 'wmb (*smp_wmb*) || >> 'rmb (*smp_rmb*) || >> 'mb (*smp_mb*) || >> 'rb_dep (*smp_read_barrier_depends*) || >> - 'rcu-lock (*rcu_read_lock*) || >> - 'rcu-unlock (*rcu_read_unlock*) || >> - 'sync-rcu (*synchronize_rcu*) || >> + 'rcu_lock (*rcu_read_lock*) || >> + 'rcu_unlock (*rcu_read_unlock*) || >> + 'sync_rcu (*synchronize_rcu*) || >> 'before_atomic (*smp_mb__before_atomic*) || >> 'after_atomic (*smp_mb__after_atomic*) || >> 'after_spinlock (*smp_mb__after_spinlock*) >> @@ -35,8 +35,8 @@ instructions F[Barriers] >> >> (* Compute matching pairs of nested Rcu-lock and Rcu-unlock *) >> let matched = let rec >> - unmatched-locks = Rcu-lock \ domain(matched) >> - and unmatched-unlocks = Rcu-unlock \ range(matched) >> + unmatched-locks = Rcu_lock \ domain(matched) >> + and unmatched-unlocks = Rcu_unlock \ range(matched) >> and unmatched = unmatched-locks | unmatched-unlocks >> and unmatched-po = [unmatched] ; po ; [unmatched] >> and unmatched-locks-to-unlocks = >> @@ -46,8 +46,8 @@ let matched = let rec >> in matched >> >> (* Validate nesting *) >> -flag ~empty Rcu-lock \ domain(matched) as unbalanced-rcu-locking >> -flag ~empty Rcu-unlock \ range(matched) as unbalanced-rcu-locking >> +flag ~empty Rcu_lock \ domain(matched) as unbalanced-rcu-locking >> +flag ~empty Rcu_unlock \ range(matched) as unbalanced-rcu-locking >> >> (* Outermost level of nesting only *) >> let crit = matched \ (po^-1 ; matched ; po^-1) >> diff --git a/tools/memory-model/linux-kernel.cat b/tools/memory-model/linux-kernel.cat >> index babe2b3..d0085d5 100644 >> --- a/tools/memory-model/linux-kernel.cat >> +++ b/tools/memory-model/linux-kernel.cat >> @@ -32,7 +32,7 @@ let mb = ([M] ; fencerel(Mb) ; [M]) | >> ([M] ; fencerel(Before_atomic) ; [RMW] ; po? ; [M]) | >> ([M] ; po? ; [RMW] ; fencerel(After_atomic) ; [M]) | >> ([M] ; po? ; [LKW] ; fencerel(After_spinlock) ; [M]) >> -let gp = po ; [Sync-rcu] ; po? >> +let gp = po ; [Sync_rcu] ; po? >> >> let strong-fence = mb | gp >> >> diff --git a/tools/memory-model/linux-kernel.def b/tools/memory-model/linux-kernel.def >> index a397387..fc08371 100644 >> --- a/tools/memory-model/linux-kernel.def >> +++ b/tools/memory-model/linux-kernel.def >> @@ -41,10 +41,10 @@ spin_unlock(X) { __unlock(X) ; } >> spin_trylock(X) __trylock(X) >> >> // RCU >> -rcu_read_lock() { __fence{rcu-lock}; } >> -rcu_read_unlock() { __fence{rcu-unlock};} >> -synchronize_rcu() { __fence{sync-rcu}; } >> -synchronize_rcu_expedited() { __fence{sync-rcu}; } >> +rcu_read_lock() { __fence{rcu_lock}; } >> +rcu_read_unlock() { __fence{rcu_unlock};} >> +synchronize_rcu() { __fence{sync_rcu}; } >> +synchronize_rcu_expedited() { __fence{sync_rcu}; } >> >> // Atomic >> atomic_read(X) READ_ONCE(*X) >> -- >> 2.7.4 >> >> >