Merge tag 'arm64-perf' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
[linux-2.6-block.git] / tools / testing / selftests / rcutorture / bin / kvm-recheck.sh
CommitLineData
c87b9c60
PM
1#!/bin/bash
2#
02736b81 3# Given the results directories for previous KVM-based torture runs,
c87b9c60
PM
4# check the build and console output for errors. Given a directory
5# containing results directories, this recursively checks them all.
6#
3327d924 7# Usage: kvm-recheck.sh resdir ...
c87b9c60
PM
8#
9# This program is free software; you can redistribute it and/or modify
10# it under the terms of the GNU General Public License as published by
11# the Free Software Foundation; either version 2 of the License, or
12# (at your option) any later version.
13#
14# This program is distributed in the hope that it will be useful,
15# but WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17# GNU General Public License for more details.
18#
19# You should have received a copy of the GNU General Public License
0e342a87
PM
20# along with this program; if not, you can access it online at
21# http://www.gnu.org/licenses/gpl-2.0.html.
c87b9c60
PM
22#
23# Copyright (C) IBM Corporation, 2011
24#
25# Authors: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
26
27PATH=`pwd`/tools/testing/selftests/rcutorture/bin:$PATH; export PATH
9eb97fe7 28. tools/testing/selftests/rcutorture/bin/functions.sh
c87b9c60
PM
29for rd in "$@"
30do
1219c863 31 firsttime=1
c87b9c60
PM
32 dirs=`find $rd -name Make.defconfig.out -print | sort | sed -e 's,/[^/]*$,,' | sort -u`
33 for i in $dirs
34 do
43e38ab3 35 if test -n "$firsttime"
1219c863 36 then
43e38ab3 37 firsttime=""
1219c863
PM
38 resdir=`echo $i | sed -e 's,/$,,' -e 's,/[^/]*$,,'`
39 head -1 $resdir/log
40 fi
02736b81
PM
41 TORTURE_SUITE="`cat $i/../TORTURE_SUITE`"
42 kvm-recheck-${TORTURE_SUITE}.sh $i
9eb97fe7 43 if test -f "$i/console.log"
c87b9c60 44 then
9eb97fe7 45 configcheck.sh $i/.config $i/ConfigFragment
8ba8b664
PM
46 if test -r $i/Make.oldconfig.err
47 then
48 cat $i/Make.oldconfig.err
49 fi
9eb97fe7 50 parse-build.sh $i/Make.out $configfile
fd35be62
PM
51 if test "$TORTURE_SUITE" != rcuperf
52 then
53 parse-torture.sh $i/console.log $configfile
54 fi
9eb97fe7
PM
55 parse-console.sh $i/console.log $configfile
56 if test -r $i/Warnings
57 then
58 cat $i/Warnings
59 fi
60 else
61 if test -f "$i/qemu-cmd"
62 then
63 print_bug qemu failed
9bee2c6f
PM
64 echo " $i"
65 elif test -f "$i/buildonly"
66 then
67 echo Build-only run, no boot/test
68 configcheck.sh $i/.config $i/ConfigFragment
69 parse-build.sh $i/Make.out $configfile
9eb97fe7
PM
70 else
71 print_bug Build failed
9bee2c6f 72 echo " $i"
9eb97fe7 73 fi
c87b9c60
PM
74 fi
75 done
76done