From 2e1dc5782dcb879410d535f937c633edea484d11 Mon Sep 17 00:00:00 2001 From: Randy MacLeod Date: Wed, 29 Dec 2021 17:37:30 -0800 Subject: valgrind: make run-ptest better There were warnings about non-existent files when there was a duplicate in the remove-for-aarch list and the non-deterministic lists so check if the files still exists before trying to deal with it. Also restore the tests in the opposite order that they were hidden. Signed-off-by: Randy MacLeod Signed-off-by: Richard Purdie --- meta/recipes-devtools/valgrind/valgrind/run-ptest | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'meta/recipes-devtools/valgrind') diff --git a/meta/recipes-devtools/valgrind/valgrind/run-ptest b/meta/recipes-devtools/valgrind/valgrind/run-ptest index caeae84d4f..15cf03f9d2 100755 --- a/meta/recipes-devtools/valgrind/valgrind/run-ptest +++ b/meta/recipes-devtools/valgrind/valgrind/run-ptest @@ -32,13 +32,16 @@ if [ "$arch" = "aarch64" ]; then done fi -echo "Run flaky tests using taskset to limit them to a single core." +echo "Run non-deterministic tests using taskset to limit them to a single core." for i in `cat taskset_nondeterministic_tests`; do - taskset 0x00000001 perl tests/vg_regtest --valgrind=${VALGRIND_BIN} --valgrind-lib=${VALGRIND_LIBEXECDIR} --yocto-ptest $i 2>&1|tee -a ${LOG} - mv $i.vgtest $i.IGNORE + # The remove-for-aarch64 and taskset_nondeterministic_tests may overlap so + # check if a file exist. + if test -f "${i}.vgtest"; then + taskset 0x00000001 perl tests/vg_regtest --valgrind=${VALGRIND_BIN} --valgrind-lib=${VALGRIND_LIBEXECDIR} --yocto-ptest $i 2>&1|tee -a ${LOG} + mv $i.vgtest $i.IGNORE + fi done - cd ${VALGRIND_LIB}/ptest && ./tests/vg_regtest \ --valgrind=${VALGRIND_BIN} \ --valgrind-lib=${VALGRIND_LIBEXECDIR} \ @@ -51,6 +54,13 @@ cd ${VALGRIND_LIB}/ptest && \ gdbserver_tests ${TOOLS} ${EXP_TOOLS} \ 2>&1|tee -a ${LOG} +echo "Restore non-deterministic tests" +for i in `cat taskset_nondeterministic_tests`; do + if test -f "${i}.vgtest.IGNORE"; then + mv $i.IGNORE $i.vgtest; + fi +done + if [ "$arch" = "aarch64" ]; then echo "Aarch64: Restore valgrind tests that result in defunct process and then out of memory" for i in `cat remove-for-aarch64`; do @@ -63,11 +73,6 @@ for i in `cat remove-for-all`; do mv $i.IGNORE $i.vgtest; done -echo "Restore flaky and other non-deterministic tests" -for i in `cat taskset_nondeterministic_tests`; do - mv $i.IGNORE $i.vgtest; -done - echo "Failed test details..." failed_tests=`grep FAIL: ${LOG} | awk '{print $2}'` for test in $failed_tests; do -- cgit 1.2.3-korg