]> code.ossystems Code Review - openembedded-core.git/commitdiff
valgrind: Actually install list of non-deterministic ptests
authorTony Tascioglu <tony.tascioglu@windriver.com>
Tue, 15 Jun 2021 14:53:12 +0000 (10:53 -0400)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 17 Jun 2021 12:41:56 +0000 (13:41 +0100)
Install list of non-deterministic threaded ptests to be run using taskset
to force them to a single core. This commit works with b318944d7, which
updated the testing script to run the non-deterministic tests separately
but didn't install the list of tests, so these tests were being run
without taskset.

The taskset_nondeterministic_tests file is the list of tests that will
be run separately with taskset, and ignored during the other tests. This
is installed to /usr/lib/valgrind/ptest similar to the 2 existing lists
for tests to skip on ARM and all architectures.

Removed bar_bad and bar_bad_xml to be included separately as they cause
issues on non-kvm QEMU instances.

See:
   b318944dd7 valgrind: Improve non-deterministic ptest reliability
for more info.

Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/valgrind/valgrind/run-ptest
meta/recipes-devtools/valgrind/valgrind/taskset_nondeterministic_tests
meta/recipes-devtools/valgrind/valgrind_3.17.0.bb

index 11050a831216b773ff669ee26c155eb83efec359..caeae84d4fc7e956cae88d0d308a1ca6f607e588 100755 (executable)
@@ -34,7 +34,7 @@ fi
 
 echo "Run flaky 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 ${LOG}
+   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
 done
 
@@ -44,7 +44,7 @@ cd ${VALGRIND_LIB}/ptest && ./tests/vg_regtest \
     --valgrind-lib=${VALGRIND_LIBEXECDIR} \
     --yocto-ptest \
     gdbserver_tests ${TOOLS} ${EXP_TOOLS} \
-    2>&1|tee ${LOG}  
+    2>&1|tee -a ${LOG}  
 
 cd ${VALGRIND_LIB}/ptest && \
     ./tests/post_regtest_checks $(pwd) \
index cf073fa9270ecbc185faff4cfa5c284e9011ad5c..e15100ade7e937453dc48cbee06cdfb5ae343527 100644 (file)
@@ -1,4 +1,2 @@
 helgrind/tests/hg05_race2
 helgrind/tests/tc09_bad_unlock
-drd/tests/bar_bad
-drd/tests/bar_bad_xml
index 7fcb086789b0934264f0d1981c7493ece14e2a14..60b248681ed2dce563d9ff51fac2d19c1f3348eb 100644 (file)
@@ -18,6 +18,7 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
            file://run-ptest \
            file://remove-for-aarch64 \
            file://remove-for-all \
+           file://taskset_nondeterministic_tests \
            file://0004-Fix-out-of-tree-builds.patch \
            file://0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch \
            file://0001-Remove-tests-that-fail-to-build-on-some-PPC32-config.patch \
@@ -187,6 +188,7 @@ do_install_ptest() {
     cp ${B}/config.h ${D}${PTEST_PATH}
     install -D ${WORKDIR}/remove-for-aarch64 ${D}${PTEST_PATH}
     install -D ${WORKDIR}/remove-for-all ${D}${PTEST_PATH}
+    install -D ${WORKDIR}/taskset_nondeterministic_tests ${D}${PTEST_PATH}
 
     # Add an executable need by none/tests/bigcode
     mkdir ${D}${PTEST_PATH}/perf