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

Alexander Kanavin alex.kanavin at gmail.com
Mon Jan 27 16:26:45 UTC 2020


(obviously drop @expectedfail once 100% pass rate is achieved on ptests)

Alex

On Mon, 27 Jan 2020 at 17:25, Alexander Kanavin <alex.kanavin at gmail.com>
wrote:

> 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/63778c01/attachment-0001.html>


More information about the Openembedded-core mailing list