]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blob - tools/testing/selftests/rcutorture/bin/kvm-recheck.sh
Merge branch 'for-linus-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/mason...
[mirror_ubuntu-hirsute-kernel.git] / tools / testing / selftests / rcutorture / bin / kvm-recheck.sh
1 #!/bin/bash
2 #
3 # Given the results directories for previous KVM-based torture runs,
4 # check the build and console output for errors. Given a directory
5 # containing results directories, this recursively checks them all.
6 #
7 # Usage: kvm-recheck.sh resdir ...
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
20 # along with this program; if not, you can access it online at
21 # http://www.gnu.org/licenses/gpl-2.0.html.
22 #
23 # Copyright (C) IBM Corporation, 2011
24 #
25 # Authors: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
26
27 PATH=`pwd`/tools/testing/selftests/rcutorture/bin:$PATH; export PATH
28 . tools/testing/selftests/rcutorture/bin/functions.sh
29 for rd in "$@"
30 do
31 firsttime=1
32 dirs=`find $rd -name Make.defconfig.out -print | sort | sed -e 's,/[^/]*$,,' | sort -u`
33 for i in $dirs
34 do
35 if test -n "$firsttime"
36 then
37 firsttime=""
38 resdir=`echo $i | sed -e 's,/$,,' -e 's,/[^/]*$,,'`
39 head -1 $resdir/log
40 fi
41 TORTURE_SUITE="`cat $i/../TORTURE_SUITE`"
42 kvm-recheck-${TORTURE_SUITE}.sh $i
43 if test -f "$i/console.log"
44 then
45 configcheck.sh $i/.config $i/ConfigFragment
46 if test -r $i/Make.oldconfig.err
47 then
48 cat $i/Make.oldconfig.err
49 fi
50 parse-build.sh $i/Make.out $configfile
51 parse-torture.sh $i/console.log $configfile
52 parse-console.sh $i/console.log $configfile
53 if test -r $i/Warnings
54 then
55 cat $i/Warnings
56 fi
57 else
58 if test -f "$i/qemu-cmd"
59 then
60 print_bug qemu failed
61 echo " $i"
62 elif test -f "$i/buildonly"
63 then
64 echo Build-only run, no boot/test
65 configcheck.sh $i/.config $i/ConfigFragment
66 parse-build.sh $i/Make.out $configfile
67 else
68 print_bug Build failed
69 echo " $i"
70 fi
71 fi
72 done
73 done