mirror of https://gitee.com/openkylin/linux.git
torture: Create a "batches" file for build reuse
This commit creates a "batches" file in the res/$ds directory, where $ds is the datestamp. This file contains the batches and the number of CPUs, for example: 1 TREE03 16 1 SRCU-P 8 2 TREE07 16 2 TREE01 8 3 TREE02 8 3 TREE04 8 3 TREE05 8 4 SRCU-N 4 4 TRACE01 4 4 TRACE02 4 4 RUDE01 2 4 RUDE01.2 2 4 TASKS01 2 4 TASKS03 2 4 SRCU-t 1 4 SRCU-u 1 4 TASKS02 1 4 TINY01 1 5 TINY02 1 5 TREE09 1 The first column is the batch number, the second the scenario number (possibly suffixed by a repetition number, as in "RUDE01.2"), and the third is the number of CPUs required by that scenario. The last line shows the number of CPUs expected by this batch file, which allows the run to be re-batched if a different number of CPUs is available. Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
This commit is contained in:
parent
7ef0d5a33c
commit
d6100d764c
|
@ -565,6 +565,18 @@ echo 'ret=$?' >> $T/script
|
|||
echo "cat $T/kvm-recheck.sh.out | tee -a $resdir/$ds/log" >> $T/script
|
||||
echo 'exit $ret' >> $T/script
|
||||
|
||||
# Extract the tests and their batches from the script.
|
||||
egrep 'Start batch|Starting build\.' $T/script | grep -v ">>" |
|
||||
sed -e 's/:.*$//' -e 's/^echo //' -e 's/-ovf//' |
|
||||
awk '
|
||||
/^----Start/ {
|
||||
batchno = $3;
|
||||
next;
|
||||
}
|
||||
{
|
||||
print batchno, $1, $2
|
||||
}' > $T/batches
|
||||
|
||||
if test "$dryrun" = script
|
||||
then
|
||||
cat $T/script
|
||||
|
@ -583,21 +595,14 @@ then
|
|||
exit 0
|
||||
elif test "$dryrun" = batches
|
||||
then
|
||||
# Extract the tests and their batches from the script.
|
||||
egrep 'Start batch|Starting build\.' $T/script | grep -v ">>" |
|
||||
sed -e 's/:.*$//' -e 's/^echo //' -e 's/-ovf//' |
|
||||
awk '
|
||||
/^----Start/ {
|
||||
batchno = $3;
|
||||
next;
|
||||
}
|
||||
{
|
||||
print batchno, $1, $2
|
||||
}'
|
||||
cat $T/batches
|
||||
exit 0
|
||||
else
|
||||
# Not a dryrun, so run the script.
|
||||
# Not a dryrun. Record the batches and the number of CPUs, then run the script.
|
||||
bash $T/script
|
||||
ret=$?
|
||||
cp $T/batches $resdir/$ds/batches
|
||||
echo '#' cpus=$cpus >> $resdir/$ds/batches
|
||||
echo " --- Done at `date` (`get_starttime_duration $starttime`) exitcode $ret" | tee -a $resdir/$ds/log
|
||||
exit $ret
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue