Age | Commit message (Collapse) | Author |
|
Recently, the none/tests/amd64/fb_test_amd64 test had been flaky and
causing failures on the auto-builder. Until we can get to the root cause
of the issue, we are going to skip the test to reduce the noise from the
ptests.
Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a365cd7a358db96791033e6dc6e45d2e816d3e4c)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
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>
(cherry picked from commit 3d23985d0d653844863ed513d75d93a36359992f)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
This commit removes the stack_changes ptest from aarch64 devices.
This test is buggy and fails almost 100% of the time in qemuarm64.
In general, many of the valgrind tests are more likely to fail on
qemuarm64 vs native x86_64.
This test previously worked on gatesgarth and dunfell, but has
been failing since hardknott. It might be due to a recent change
in the cross-compiler or glibc.
The test runs fine when running natively on arm on a Raspberry Pi.
Until we can find the root cause for the failures, this shorter
term solution should clear up some of the noise from the autobuilder
from a known failure.
Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 82d6411b80a46d8ec0258ca75c3c80dc6128d44e)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
Several of the valgrind tests (particulaly helgrind) are unreliable and
can fail with a different output.
Particularly, there is a higher chance of failure on QEMU instances with
SMP enabled and on systems with more interrupts such as laptops on powersave.
The tests have been reported upstream as being unreliable dating back
over 5 years, due in part to the ordering of threads during
an "unwinding" process in helgrind.
https://bugs.kde.org/show_bug.cgi?id=345121
https://bugs.kde.org/show_bug.cgi?id=430321
A workaround to improve the reliability of such tests is to force them
to run on a single CPU core using taskset. This greatly reduces the
chance of a failure.
>From my testing, I have found it can help reduce the rate of failures
on both a laptop and QEMU by over 5x. Stress-testing in QEMU for several
hours did not result in a failure while running the test normally did.
The flaky or undeterministic thread-based tests are defined in the
taskset_nondeterministic_tests file. These test cases will be run with
taskset 0x00000001 to run on a single CPU core rather then the regular
test.
The edited run-ptest executes the flaky tests first, then ignores them
to not duplicate the results from the main tests. Everything modified is
restored when testing is complete.
The drawback is that this isn't a foolproof solution. It helps the tests
fail much less frequently, and considering how this issue has been documented
for a long time, a workaround such as this is needed.
Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b318944dd72ca7b0408e955f3599381ab3ac3ba8)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
|
|
Some intermittent failures in valgrind are hard
reproduce.
Printing the difference between actual and expected
will make understanding them slightly easier.
[YOCTO #14294]
Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Backport a patch to avoid lsw/lmw instructions
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Backport a recent upstream patch
that redesigned the test.
It's now enabled for both x86-64 and arm.
[YOCTO #14223]
Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Attempt to fix intermittent failure of `drd/tests/std_list`
Locally tested to take around 45 s on qemuarm64
[YOCTO #14228]
Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
exp-dhat:
commit 441bfc5f5 promoted exp-dhat to dhat
exp-sgcheck:
commit 40187fcd6 removed the exp-sgcheck tool.
Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Test hangs after glibc 2.33 uprev.
Using gdb `p t[0]` to modify the timeout
argument no longer affects how long `select` wait.
https://bugs.kde.org/show_bug.cgi?id=432870
[YOCTO #14223]
Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The tests' output is non-deterministic and sometimes
doesn't match the sample output. This has been reported at
https://bugs.kde.org/show_bug.cgi?id=430321
(see also an earlier related bug https://bugs.kde.org/show_bug.cgi?id=358213)
Until upstream figures out how to fix this, let's not run the tests.
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
PTH_FUNC definition needs to be modified in order to
intercept posix thread functions in both libc and libpthread.
In order to handle this in helgrind, weak alias the pthread functions in glibc.
Include a special case for musl.
See https://bugs.kde.org/show_bug.cgi?id=428909 for additional
discussion.
Upstream-Status: Submitted
Signed-off-by: Paul Floyd <paulf@free.fr>
Signed-off-by: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
After glibc uprev 2.31 -> 2.32, the following drd ptests
fail with the error "condition variable has not been initialized".
drd/tests/annotate_hb_err
drd/tests/annotate_sem
drd/tests/annotate_rwlock
drd/tests/annotate_order_2
drd/tests/annotate_smart_pointer
drd/tests/annotate_spinlock
drd/tests/monitor_example
drd/tests/pth_cond_race
drd/tests/pth_inconsistent_cond_wait
In glibc 2.32, the POSIX thread functions are in both
libc and libpthread, causing valgrind to misinterpert
test behaviour. This patch tells valgrind to intercept
both the libc and the libpthread functions, resolving
these ptest failures.
Here are the latest test results on qemux86-64:
=== Test Summary ===
TOTAL: 728
PASSED: 688
FAILED: 1
SKIPPED: 39
The failed test is in helgrind:
FAIL: helgrind/tests/pth_destroy_cond
Patch can be removed once we uprev valgrind.
See valgrind commit 15330adf7c2471fbaa6a0818db07078d81dbff97.
Signed-off-by: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Previously in:
f75792b28e valgrind: make a few more ptests pass
the vagrind test runner was adjusted to suppress part
of a path that only exists when run in the yocto ptest
environment. Unfortunately this change includes the
valgrind version and when valgrind was last updated,
the patch was not changed. Rather than continually updating
the patch or even generating the version dynamically,
we can simply change the expected output for two tests.
The reason the option: --fullpath-after=foo was
introduced into the effected valgrind ptests was to
deal with builds where ccache is used. Compiling with
ccache enabled sometimes causes the source file absolute
name to be found in a full path that is not the same as $PWD.
See commit c80f32e662dfa2a4f046960a25d5b8b7a8821bea in
valgrind for more information about changes to the
arguments that test badfree3 and varinfo5 run with.
There is also a minor fix to add the missing overloading.pm
perl package and put the dependencies in alphabetic order.
Signed-off-by: Stacy Gaikovaia <Stacy.Gaikovaia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch
0001-tests-Make-pthread_detatch-call-portable-across-plat.patch
0004-pth_atfork1.c-Define-error-API-for-musl.patch
removed since they are included in 3.16.0
refresh 0004-Fix-out-of-tree-builds.patch
-License-Update:
before:
You should have received a copy of the GNU General Public
License along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307, USA.
after:
You should have received a copy of the GNU General Public License
along with this program; if not, see <http://www.gnu.org/licenses/>.
Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Drop disabling outline-atomics since that was added to fix this issue in
particular
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This helps compile the testcase with musl on 32bit arches
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
valgrind's test suite isn't generally run by upstream on arm64,
so let's simply disable the failing test and establish a set
that works.
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This addresses a ptest failure in particular that the submitted
patch caused.
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Particularly, one test is disabled as it is failing everywhere,
two patches that actually cause failures are dropped and
some binaries are prevented from being stripped where that is
expected.
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
On qemuarm64 systems, about half of the valgrind tests fail and
often result in defunct processes, eg:
root 819 818 25 00:12 pts/0 00:01:52 /usr/bin/valgrind --command-line-only=yes --memcheck:leak-check=no --tool=memcheck -q --track-origins=
root 861 420 0 00:13 pts/0 00:00:00 [sh] <defunct>
Eventually these processes use so much memory that the
out of memory killer runs.
Hide the tests that fail as a horrid work-around until the
root cause has been resolved since this at least allows the
ptest run to complete. This work-around is done in the run-ptest
script using a sorted list of tests so that they can be easily
restored one by one without a rebuild during testing.
With core-image-minimal on qemuarm64:
Recipe | Passed | Failed | Skipped | Time(s)
valgrind | 333 | 49 | 17 | 7637
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Make some changes to the run-ptest script:
- after main tests run integrity check like the pkg Makefile.
- aesthetic and ordering changes
Add the .in_place directory and its contents which allows valgrind
to be run in-place thereby enabling the gdbserver_tests to
complete rather than hang. Unfortunately directory paths embedded
in binaries still cause many of these test to fail.
Add the exp-sgcheck tests.
With core-image-minimal on qemux86-64/kvm:
Recipe | Passed | Failed | Skipped | Time(s)
before | 648 | 12 | 60 | 1541
after | 662 | 20 | 38 | 1429
ppc-no-gdbserv | 415 | 196 | 34 | 10689
Since fewer tests timeout, the overall time has decreased.
With core-image-sato on qemux86-64/kvm the results are now
the same as core-image-minimal.
qemuppc/arm64 runs result in the oom-killer eventually running since
some processes do not terminate properly and accumulate as defunct
processes in memory. Without the gdbserver_tests, the tests
complete without defunct process or the oom-killer running for
ppc but not for arm64.
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Adjust two memcheck vgtest files to deal with relative paths
that are in test executables when cross-compiling.
Add libgomp to enable OpenMP tests.
Add the bz2 executable for memcheck/tests/vcpu_bz2.
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Skip two filters in filter_xml_frames since they
are intended to filter filesystem paths under '/usr' that
vary from platform to platform. In the ptest case
for Yocto's valgrind, the ptest executables are placed under:
/usr/lib/valgrind/ptest
and if these frames are filtered out, then several 'drd' tests fail
the comparision between expected and actual output.
Also adjust the std_list expected output to agree with that
produced when the --yocto-ptest option to vg_regtest is used.
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The SRC_URI moved.
Two local patches are now fixed upstream so remove them.
The glibc ptest results are essentially the same.
3.14 3.15
TOTAL: 579 589
PASSED: 297 301
FAILED: 251 254
SKIPPED: 31 34
DURATION: 1312 1171
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The libnolto_coregrind_a_OBJECTS is in libcoregrind_a_LIBADD, so the objects
should be ready before generate libcoregrind.a, otherwise there would be
failures:
i586-poky-linux-ar: libnolto_coregrind_x86_linux_a-m_libcsetjmp.o: No such file or directory
make[3]: *** [libcoregrind-x86-linux.a] Error 1
Add libnolto_coregrind_a_OBJECTS to EXTRA_libcoregrind_DEPENDENCIES to fix the
problem.
This is a race issue during parallel build.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Two recent patches are now marked as reported in the
valgrind bugzilla.
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Avoid mips32 x-compiler warnings such as:
| ../../../valgrind-3.14.0/helgrind/tests/annotate_hbefore.c:360:6: warning: no previous prototype for 'do_signal' [-Wmissing-prototypes]
| void do_signal ( UWord* w )
| ^~~~~~~~~
by making functions and global variables that are file scope be static
and more importantly also avoid an assembler error:
/tmp/cce22iiw.s: Assembler messages:
/tmp/cce22iiw.s:446: Error: symbol `exit_0' is already defined
/tmp/cce22iiw.s:448: Error: symbol `exit' is already defined
/tmp/cce22iiw.s:915: Error: symbol `exit_0' is already defined
/tmp/cce22iiw.s:917: Error: symbol `exit' is already defined
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The removed patches are all upstream.
Adjusted two patches due to rebase.
Guard against __GLIBC_PREREQ for musl libc
Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
- Pass mips32's CFLAGS to tests
- Fix broken inline asm in tests on mips32-linux
- Build mips n32 successfully, support it.
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
If valgrind-ptest is installed, we will get the some prelink error
like below at do_image:
.../usr/sbin/prelink: /usr/lib64/valgrind/ptest/memcheck/tests/wrap7:\
Could not find one of the dependencies: \
.../usr/sbin//prelink-rtld: error \
while loading shared libraries: wrap7so.so: cannot open shared \
object file: No such file or directory
The wrap7 needs to link the shared object in the path
/usr/lib64/valgrind/ptest/memcheck/tests, but it fails.
So we correct the path for ptest.
Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
valgrind currently does not know anything about the CPUID flag added to
the HWCAP auxv entry in kernel 4.11+
At runtime it will fails like this:
ARM64 front end: branch_etc
disInstr(arm64): unhandled instruction 0xD5380001
disInstr(arm64): 1101'0101 0011'1000 0000'0000 0000'0001 ==2082==
valgrind: Unrecognised instruction at address 0x4014e64.
This patch is a workaround by masking all HWCAP. This patch is dervied
from https://bugzilla.redhat.com/show_bug.cgi?id=1464211
Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha@xilinx.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
* Add statistic summary for run-ptest
* Ensure the script can be run anywhere
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
x86/aarch64 needed minor changes to make few testcases portable
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
musl unearthed a problem when building out of tree, config.h was being
used from $(srcdir) instead of generated config.h in $(builddir)
this assumed functions e.g. mallinfo() and more which are not in musl
as a result tests broke.
Also add fixes to build remaining tests when building on musl
pass -fno-pie as it cant use PIE especially in ptests/x86_64
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Add function to remove -mcpu compiler options on arm
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
do_diffs in the vg_regtest script compares the actual test output
against the expected test output and returns 0 if it matches.
Previous upgrade modified the return value of do_diffs() and that
resulted in ptest failures.
[YOCTO #8471]
Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
@PERL@ in vg_regtest.in causes recipe specific sysroot based perl to
be present in the vg_regtest script, making it unusable in the target.
Use /usr/bin/perl instead of @PERL@ to fix it.
Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Hack: Depending on how glibc was compiled (e.g. optimised
for size or built with _FORTIFY_SOURCE enabled) the strlen
symbol might not be found in ld-XXX.so. Therefore although
we should still try to intercept it, don't make it mandatory
to do so.
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Remove backported gcc5-port.patch
Remove 11_mips-link-tool.patch as there is nothing in the target file
(or the entire source tree) that resembles anything contained in the patch.
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|