All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@kernel.org>
To: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org,
	kernel-team@meta.com, mingo@kernel.org
Cc: stern@rowland.harvard.edu, 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,
	luc.maranget@inria.fr, akiyks@gmail.com,
	"Paul E. McKenney" <paulmck@kernel.org>
Subject: [PATCH memory-model scripts 07/31] tools/memory-model: Update parseargs.sh for hardware verification
Date: Mon, 20 Mar 2023 18:05:25 -0700	[thread overview]
Message-ID: <20230321010549.51296-7-paulmck@kernel.org> (raw)
In-Reply-To: <4e5839bb-e980-4931-a550-3548d025a32a@paulmck-laptop>

This commit adds a --hw argument to parseargs.sh to specify the CPU
family for a hardware verification.  For example, "--hw AArch64" will
specify that a C-language litmus test is to be translated to ARMv8 and
the result verified.  This will set the LKMM_HW_MAP_FILE environment
variable accordingly.  If there is no --hw argument, this environment
variable will be set to the empty string.

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
---
 tools/memory-model/scripts/parseargs.sh | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/tools/memory-model/scripts/parseargs.sh b/tools/memory-model/scripts/parseargs.sh
index afe7bd23de6b..5f016fc3f3af 100755
--- a/tools/memory-model/scripts/parseargs.sh
+++ b/tools/memory-model/scripts/parseargs.sh
@@ -27,6 +27,7 @@ initparam () {
 
 initparam LKMM_DESTDIR "."
 initparam LKMM_HERD_OPTIONS "-conf linux-kernel.cfg"
+initparam LKMM_HW_MAP_FILE ""
 initparam LKMM_JOBS `getconf _NPROCESSORS_ONLN`
 initparam LKMM_PROCS "3"
 initparam LKMM_TIMEOUT "1m"
@@ -37,10 +38,11 @@ usagehelp () {
 	echo "Usage $scriptname [ arguments ]"
 	echo "      --destdir path (place for .litmus.out, default by .litmus)"
 	echo "      --herdopts -conf linux-kernel.cfg ..."
+	echo "      --hw AArch64"
 	echo "      --jobs N (number of jobs, default one per CPU)"
 	echo "      --procs N (litmus tests with at most this many processes)"
 	echo "      --timeout N (herd7 timeout (e.g., 10s, 1m, 2hr, 1d, '')"
-	echo "Defaults: --destdir '$LKMM_DESTDIR_DEF' --herdopts '$LKMM_HERD_OPTIONS_DEF' --jobs '$LKMM_JOBS_DEF' --procs '$LKMM_PROCS_DEF' --timeout '$LKMM_TIMEOUT_DEF'"
+	echo "Defaults: --destdir '$LKMM_DESTDIR_DEF' --herdopts '$LKMM_HERD_OPTIONS_DEF' --hw '$LKMM_HW_MAP_FILE' --jobs '$LKMM_JOBS_DEF' --procs '$LKMM_PROCS_DEF' --timeout '$LKMM_TIMEOUT_DEF'"
 	exit 1
 }
 
@@ -95,6 +97,11 @@ do
 		LKMM_HERD_OPTIONS="$2"
 		shift
 		;;
+	--hw)
+		checkarg --hw "(.map file architecture name)" "$#" "$2" '^[A-Za-z0-9_-]\+' '^--'
+		LKMM_HW_MAP_FILE="$2"
+		shift
+		;;
 	-j[1-9]*)
 		njobs="`echo $1 | sed -e 's/^-j//'`"
 		trailchars="`echo $njobs | sed -e 's/[0-9]\+\(.*\)$/\1/'`"
-- 
2.40.0.rc2


  parent reply	other threads:[~2023-03-21  1:07 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-21  1:05 [PATCH memory-model 0/31] LKMM scripting updates for v6.4 Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 01/31] tools/memory-model: Document locking corner cases Paul E. McKenney
2023-03-22  8:59   ` Andrea Parri
2023-03-22 19:14     ` Paul E. McKenney
2023-03-23  1:42       ` Andrea Parri
2023-03-23  2:52   ` Akira Yokosawa
2023-03-23 18:52     ` Paul E. McKenney
2023-03-23 23:30       ` Akira Yokosawa
2023-03-23 23:49         ` Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 02/31] tools/memory-model: Make judgelitmus.sh note timeouts Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 03/31] tools/memory-model: Make cmplitmushist.sh " Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 04/31] tools/memory-model: Make judgelitmus.sh identify bad macros Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 05/31] tools/memory-model: Make judgelitmus.sh detect hard deadlocks Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 06/31] tools/memory-model: Fix paulmck email address on pre-existing scripts Paul E. McKenney
2023-03-21  1:05 ` Paul E. McKenney [this message]
2023-03-21  1:05 ` [PATCH memory-model scripts 08/31] tools/memory-model: Make judgelitmus.sh handle hardware verifications Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 09/31] tools/memory-model: Add simpletest.sh to check locking, RCU, and SRCU Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 10/31] tools/memory-model: Fix checkalllitmus.sh comment Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 11/31] tools/memory-model: Hardware checking for check{,all}litmus.sh Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 12/31] tools/memory-model: Make judgelitmus.sh ransack .litmus.out files Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 13/31] tools/memory-model: Split runlitmus.sh out of checklitmus.sh Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 14/31] tools/memory-model: Make runlitmus.sh generate .litmus.out for --hw Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 15/31] tools/memory-model: Move from .AArch64.litmus.out to .litmus.AArch.out Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 16/31] tools/memory-model: Keep assembly-language litmus tests Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 17/31] tools/memory-model: Allow herd to deduce CPU type Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 18/31] tools/memory-model: Make runlitmus.sh check for jingle errors Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 19/31] tools/memory-model: Add -v flag to jingle7 runs Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 20/31] tools/memory-model: Implement --hw support for checkghlitmus.sh Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 21/31] tools/memory-model: Fix scripting --jobs argument Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 22/31] tools/memory-model: Make checkghlitmus.sh use mselect7 Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 23/31] tools/memory-model: Make history-check scripts " Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 24/31] tools/memory-model: Add "--" to parseargs.sh for additional arguments Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 25/31] tools/memory-model: Repair parseargs.sh header comment Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 26/31] tools/memory-model: Add checktheselitmus.sh to run specified litmus tests Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 27/31] tools/memory-model: Add data-race capabilities to judgelitmus.sh Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 28/31] tools/memory-model: Make judgelitmus.sh handle scripted Result: tag Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 29/31] tools/memory-model: Use "-unroll 0" to keep --hw runs finite Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 30/31] tools/memory-model: Use "grep -E" instead of "egrep" Paul E. McKenney
2023-03-21  1:05 ` [PATCH memory-model scripts 31/31] tools/memory-model: Document LKMM test procedure Paul E. McKenney

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230321010549.51296-7-paulmck@kernel.org \
    --to=paulmck@kernel.org \
    --cc=akiyks@gmail.com \
    --cc=boqun.feng@gmail.com \
    --cc=dhowells@redhat.com \
    --cc=j.alglave@ucl.ac.uk \
    --cc=kernel-team@meta.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luc.maranget@inria.fr \
    --cc=mingo@kernel.org \
    --cc=npiggin@gmail.com \
    --cc=parri.andrea@gmail.com \
    --cc=peterz@infradead.org \
    --cc=stern@rowland.harvard.edu \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.