[OE-core] [PATCH 8/9] valgrind: fix the remaining ptest failures

Alexander Kanavin alex.kanavin at gmail.com
Mon Jan 27 16:25:53 UTC 2020


Now that ptests are actually run on the autobuilder for both x86 and arm64,
we can look at whether anything still fails with this patchset. I tested on
the x86 with 100% pass, but not on arm.

My goal is to drop @expectedfail from ptests, because otherwise ptests keep
regressing with nobody caring or paying attention. Better to catch and
reject regressions when they happen I think.

Alex

On Mon, 27 Jan 2020 at 16:53, akuster808 <akuster808 at gmail.com> wrote:

>
>
> On 1/27/20 6:19 AM, Alexander Kanavin wrote:
> > 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.
> So this will address either
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=13666  and
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=13520 ?
>
> - armin
> >
> > Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> > ---
> >  ...eak_cmsg.stderr.exp-adjust-tmp-paths.patch | 34 +++++++++++++++++++
> >  ...rind-adjust-std_list-expected-output.patch | 32 -----------------
> >  ...Dereference-pthread_t-before-adding-.patch | 32 -----------------
> >  .../valgrind/valgrind_3.15.0.bb               | 23 +++++++++++--
> >  4 files changed, 55 insertions(+), 66 deletions(-)
> >  create mode 100644
> meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch
> >  delete mode 100644
> meta/recipes-devtools/valgrind/valgrind/0002-valgrind-adjust-std_list-expected-output.patch
> >  delete mode 100644
> meta/recipes-devtools/valgrind/valgrind/0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch
> >
> > diff --git
> a/meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch
> b/meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch
> > new file mode 100644
> > index 00000000000..d641998d721
> > --- /dev/null
> > +++
> b/meta/recipes-devtools/valgrind/valgrind/0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch
> > @@ -0,0 +1,34 @@
> > +From f405297d3382cd98391d02f397e2387da1f42879 Mon Sep 17 00:00:00 2001
> > +From: Alexander Kanavin <alex.kanavin at gmail.com>
> > +Date: Fri, 24 Jan 2020 17:55:39 +0100
> > +Subject: [PATCH] none/tests/fdleak_cmsg.stderr.exp: adjust /tmp paths
> > +
> > +In oe-core, /tmp is linked to /var/volatile/tmp and
> > +valgrind output changes accordingly
> > +
> > +Upstream-Status: Inappropriate [oe-core specific]
> > +Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> > +---
> > + none/tests/fdleak_cmsg.stderr.exp | 4 ++--
> > + 1 file changed, 2 insertions(+), 2 deletions(-)
> > +
> > +diff --git a/none/tests/fdleak_cmsg.stderr.exp
> b/none/tests/fdleak_cmsg.stderr.exp
> > +index 6e5a797b9..0ede1ab18 100644
> > +--- a/none/tests/fdleak_cmsg.stderr.exp
> > ++++ b/none/tests/fdleak_cmsg.stderr.exp
> > +@@ -25,10 +25,10 @@ Open file descriptor ...: /dev/null
> > +
> > +
> > + FILE DESCRIPTORS: 6 open at exit.
> > +-Open file descriptor ...: /tmp/data2
> > ++Open file descriptor ...: ...
> > +    ...
> > +
> > +-Open file descriptor ...: /tmp/data1
> > ++Open file descriptor ...: ...
> > +    ...
> > +
> > + Open AF_UNIX socket ...: <unknown>
> > +--
> > +2.17.1
> > +
> > diff --git
> a/meta/recipes-devtools/valgrind/valgrind/0002-valgrind-adjust-std_list-expected-output.patch
> b/meta/recipes-devtools/valgrind/valgrind/0002-valgrind-adjust-std_list-expected-output.patch
> > deleted file mode 100644
> > index a82972ec1b6..00000000000
> > ---
> a/meta/recipes-devtools/valgrind/valgrind/0002-valgrind-adjust-std_list-expected-output.patch
> > +++ /dev/null
> > @@ -1,32 +0,0 @@
> > -From 6e1e9265b03cf51d09c028d657fe826d7156a783 Mon Sep 17 00:00:00 2001
> > -From: Randy MacLeod <Randy.MacLeod at windriver.com>
> > -Date: Mon, 13 May 2019 17:26:26 -0400
> > -Subject: [PATCH 2/2] valgrind: adjust std_list expected output
> > -
> > -The run-ptest script uses a custom --yocto-ptest option
> > -to change the summary statistics that valgrind issues
> > -to a format that matches what ptest-runner expects.
> > -
> > -Only this std_list test which checks that strcpy() works
> > -properly on Ubuntu-12.04 and later is affected by this change.
> > -It's normal output when called with --yocto-ptest is a blank
> > -line so adjust the expected output.
> > -
> > -Upstream-Status: Inappropriate [Yocto specific]
> > -
> > -Signed-off-by: Randy MacLeod <Randy.MacLeod at windriver.com>
> > ----
> > - drd/tests/std_list.stderr.exp | 2 --
> > - 1 file changed, 2 deletions(-)
> > -
> > -diff --git a/drd/tests/std_list.stderr.exp
> b/drd/tests/std_list.stderr.exp
> > -index d18786f80..8b1378917 100644
> > ---- a/drd/tests/std_list.stderr.exp
> > -+++ b/drd/tests/std_list.stderr.exp
> > -@@ -1,3 +1 @@
> > -
> > --
> > --ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
> > ---
> > -2.17.0
> > -
> > diff --git
> a/meta/recipes-devtools/valgrind/valgrind/0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch
> b/meta/recipes-devtools/valgrind/valgrind/0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch
> > deleted file mode 100644
> > index 05886c743dc..00000000000
> > ---
> a/meta/recipes-devtools/valgrind/valgrind/0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch
> > +++ /dev/null
> > @@ -1,32 +0,0 @@
> > -From a6547fc17c120dbd95b852f50b0c4bdee4fedb9a Mon Sep 17 00:00:00 2001
> > -From: Khem Raj <raj.khem at gmail.com>
> > -Date: Sat, 10 Jun 2017 01:20:32 -0700
> > -Subject: [PATCH 6/6] pth_detached3.c: Dereference pthread_t before
> adding
> > - offset to it
> > -
> > -Fixes
> > -error: invalid use of undefined type 'struct __pthread'
> > -
> > -Upstream-Status: Pending
> > -
> > -Signed-off-by: Khem Raj <raj.khem at gmail.com>
> > ----
> > - drd/tests/pth_detached3.c | 2 +-
> > - 1 file changed, 1 insertion(+), 1 deletion(-)
> > -
> > -diff --git a/drd/tests/pth_detached3.c b/drd/tests/pth_detached3.c
> > -index c02eef1..35d43a6 100644
> > ---- a/drd/tests/pth_detached3.c
> > -+++ b/drd/tests/pth_detached3.c
> > -@@ -21,7 +21,7 @@ int main(int argc, char** argv)
> > -   pthread_detach(thread);
> > -
> > -   /* Invoke pthread_detach() with an invalid thread ID. */
> > --  pthread_detach(thread + 8);
> > -+  pthread_detach((pthread_t*)(&thread + 8));
> > -
> > -   fprintf(stderr, "Finished.\n");
> > -
> > ---
> > -2.13.1
> > -
> > diff --git a/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb
> b/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb
> > index 6a3834cfdc6..0f86aa44ca6 100644
> > --- a/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb
> > +++ b/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb
> > @@ -29,7 +29,6 @@ SRC_URI = "
> https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
> >
>  file://0003-correct-include-directive-path-for-config.h.patch \
> >             file://0004-pth_atfork1.c-Define-error-API-for-musl.patch \
> >
>  file://0005-tc20_verifywrap.c-Fake-__GLIBC_PREREQ-with-musl.patch \
> > -
>  file://0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch \
> >
>  file://0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch \
> >             file://0002-memcheck-x86-Define-__THROW-if-not-defined.patch
> \
> >
>  file://0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch \
> > @@ -38,9 +37,9 @@ SRC_URI = "
> https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \
> >
>  file://0001-Make-local-functions-static-to-avoid-assembler-error.patch \
> >             file://0001-Return-a-valid-exit_code-from-vg_regtest.patch \
> >
>  file://0001-valgrind-filter_xml_frames-do-not-filter-usr.patch \
> > -           file://0002-valgrind-adjust-std_list-expected-output.patch \
> >             file://0001-adjust-path-filter-for-2-memcheck-tests.patch \
> >             file://s390x_vec_op_t.patch \
> > +
>  file://0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch \
> >             "
> >  SRC_URI[md5sum] = "46e5fbdcbc3502a5976a317a0860a975"
> >  SRC_URI[sha256sum] =
> "417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1"
> > @@ -205,4 +204,24 @@ do_install_ptest() {
> >      # handle multilib
> >      sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest
> >      sed -i s:@bindir@:${bindir}:g ${D}${PTEST_PATH}/run-ptest
> > +
> > +    # This test fails on the host as well, using both 3.15 and git
> master (as of Jan 24 2020)
> > +    # https://bugs.kde.org/show_bug.cgi?id=402833
> > +    rm ${D}${PTEST_PATH}/memcheck/tests/overlap.vgtest
> > +
> > +    # As the binary isn't stripped or debug-splitted, the source file
> isn't fetched
> > +    # via dwarfsrcfiles either, so it needs to be installed manually.
> > +    mkdir -p
> ${D}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/${BP}/none/tests/
> > +    install ${S}/none/tests/tls.c
> ${D}/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}/${BP}/none/tests/
> >  }
> > +
> > +# avoid stripping some generated binaries otherwise some of the tests
> will fail
> > +# run-strip-reloc.sh, run-strip-strmerge.sh and so on will fail
> > +INHIBIT_PACKAGE_STRIP_FILES = "\
> > +    ${PKGD}${PTEST_PATH}/none/tests/tls \
> > +    ${PKGD}${PTEST_PATH}/none/tests/tls.so \
> > +    ${PKGD}${PTEST_PATH}/none/tests/tls2.so \
> > +    ${PKGD}${PTEST_PATH}/helgrind/tests/tc09_bad_unlock \
> > +    ${PKGD}${PTEST_PATH}/memcheck/tests/manuel1 \
> > +    ${PKGD}${PTEST_PATH}/drd/tests/pth_detached3 \
> > +"
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20200127/b1387bec/attachment.html>


More information about the Openembedded-core mailing list