tools headers UAPI: Sync openat2.h with the kernel sources
[linux-2.6-microblaze.git] / tools / memory-model / scripts / checklitmus.sh
1 #!/bin/sh
2 # SPDX-License-Identifier: GPL-2.0+
3 #
4 # Run a herd7 test and invokes judgelitmus.sh to check the result against
5 # a "Result:" comment within the litmus test.  It also outputs verification
6 # results to a file whose name is that of the specified litmus test, but
7 # with ".out" appended.
8 #
9 # Usage:
10 #       checklitmus.sh file.litmus
11 #
12 # Run this in the directory containing the memory model, specifying the
13 # pathname of the litmus test to check.  The caller is expected to have
14 # properly set up the LKMM environment variables.
15 #
16 # Copyright IBM Corporation, 2018
17 #
18 # Author: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
19
20 litmus=$1
21 herdoptions=${LKMM_HERD_OPTIONS--conf linux-kernel.cfg}
22
23 if test -f "$litmus" -a -r "$litmus"
24 then
25         :
26 else
27         echo ' --- ' error: \"$litmus\" is not a readable file
28         exit 255
29 fi
30
31 echo Herd options: $herdoptions > $LKMM_DESTDIR/$litmus.out
32 /usr/bin/time $LKMM_TIMEOUT_CMD herd7 $herdoptions $litmus >> $LKMM_DESTDIR/$litmus.out 2>&1
33
34 scripts/judgelitmus.sh $litmus