generic/270: wait for fsstress processes to be killed

Currently wait will do nothing, because $pid is empty due to the fact
that the command was ran on the background in a separate shell so we
never got the $! set.

This is causing unexpected test failures especially under low memory
due to the fact that the fsstress is still running when we are
checking and comparing quota usage.

Fix it by using -w argument for killall that will wait for all processes
to actually die before it exits.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
Lukas Czerner
2020-06-15 12:52:36 +02:00
committed by Eryu Guan
parent 497a269f48
commit aae8fbecf4
+1 -3
View File
@@ -38,7 +38,6 @@ _workout()
$SETCAP_PROG cap_chown=epi $tmp.fsstress.bin
(su $qa_user -c "$tmp.fsstress.bin $args" &) > /dev/null 2>&1
pid=$!
echo "Run dd writers in parallel"
for ((i=0; i < num_iterations; i++))
@@ -50,8 +49,7 @@ _workout()
sleep $enospc_time
done
$KILLALL_PROG $tmp.fsstress.bin
wait $pid
$KILLALL_PROG -w $tmp.fsstress.bin
}
# real QA test starts here