WIP FPC-III support
[linux/fpc-iii.git] / tools / testing / selftests / rcutorture / bin / kvm-find-errors.sh
blob6f50722f251f8955412e9e8e92464fa2f8192f31
1 #!/bin/sh
2 # SPDX-License-Identifier: GPL-2.0+
4 # Invoke a text editor on all console.log files for all runs with diagnostics,
5 # that is, on all such files having a console.log.diags counterpart.
6 # Note that both console.log.diags and console.log are passed to the
7 # editor (currently defaulting to "vi"), allowing the user to get an
8 # idea of what to search for in the console.log file.
10 # Usage: kvm-find-errors.sh directory
12 # The "directory" above should end with the date/time directory, for example,
13 # "tools/testing/selftests/rcutorture/res/2018.02.25-14:27:27".
14 # Returns error status reflecting the success (or not) of the specified run.
16 # Copyright (C) IBM Corporation, 2018
18 # Author: Paul E. McKenney <paulmck@linux.ibm.com>
20 rundir="${1}"
21 if test -z "$rundir" -o ! -d "$rundir"
22 then
23 echo Directory "$rundir" not found.
24 echo Usage: $0 directory
25 exit 1
27 editor=${EDITOR-vi}
29 # Find builds with errors
30 files=
31 for i in ${rundir}/*/Make.out
33 if egrep -q "error:|warning:" < $i
34 then
35 egrep "error:|warning:" < $i > $i.diags
36 files="$files $i.diags $i"
38 done
39 if test -n "$files"
40 then
41 $editor $files
42 else
43 echo No build errors.
45 if grep -q -e "--buildonly" < ${rundir}/log
46 then
47 echo Build-only run, no console logs to check.
50 # Find console logs with errors
51 files=
52 for i in ${rundir}/*/console.log
54 if test -r $i.diags
55 then
56 files="$files $i.diags $i"
58 done
59 if test -n "$files"
60 then
61 $editor $files
62 exit 1
63 else
64 echo No errors in console logs.
65 exit 0