Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Alexandre Belloni <alexandre.belloni@bootlin.com>
To: Martin Hundeb?ll <martin@geanix.com>,
	openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH 2/3] ell: add ptest
Date: Tue, 18 Jun 2024 18:53:43 +0200	[thread overview]
Message-ID: <20240618165343c5b1eb1d@mail.local> (raw)
In-Reply-To: <17DA243CAF230652.27929@lists.openembedded.org>

On 18/06/2024 17:54:07+0200, Alexandre Belloni via lists.openembedded.org wrote:
> Hello,
> 
> I didn't test v2 but I guess it was not updated. This caused
> reproducibility issues:
> 
> https://autobuilder.yocto.io/pub/repro-fail/oe-reproducible-20240618-sbhq7ol0/packages/diff-html/
> 
> and ptest failures:
> 
> {'ell': ['test-dbus', 'test-dbus-message-fds', 'test-dbus-properties']}
> 
> https://autobuilder.yoctoproject.org/typhoon/#/builders/82/builds/6547/steps/13/logs/stdio
> https://autobuilder.yocto.io/pub/non-release/20240618-14/testresults/qemuarm64-ptest/ell.log
> 
> https://autobuilder.yoctoproject.org/typhoon/#/builders/81/builds/6725/steps/12/logs/stdio
> https://autobuilder.yocto.io/pub/non-release/20240618-14/testresults/qemux86-64-ptest/ell.log
> 

It also breaks on arm and clang:

https://autobuilder.yoctoproject.org/typhoon/#/builders/166/builds/508/steps/12/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#/builders/142/builds/293/steps/12/logs/stdio

> 
> On 17/06/2024 15:36:41+0200, Martin Hundeb?ll wrote:
> > Depends on  openssl-native and xxd-native to allow generating
> > certificates used for testing.
> > 
> > Create the ${B}/unit dir as that seems to be missing with the automake
> > patches used for building tests separately from running them.
> > 
> > In order to build the test cases, both --enable-tests and
> > --enable-maintainer-mode must be passed to configure.
> > 
> > A few unit tests looks for files in ../ell-0.66/unit (i.e. $(top_srcdir)
> > in automake) when running. Instead of playing games with symlinks or
> > install paths, the "correct" path is just (re)defined in CFLAGS.
> > 
> > A (submitted) patch is added to make dbus-server run correctly when
> > testing with "nonetwork" passed to runqemu.
> > 
> > Skip a few tests that require additional kernel modules to be enabled.
> > 
> > Test execution time is about 10 seconds.
> > 
> > Signed-off-by: Martin Hundeb�ll <martin@geanix.com>
> > ---
> >  .../distro/include/ptest-packagelists.inc     |  1 +
> >  meta/recipes-core/ell/ell_0.66.bb             | 25 ++++++++++--
> >  ...-specify-tcp-hostname-in-dbus-config.patch | 38 +++++++++++++++++++
> >  meta/recipes-core/ell/files/run-ptest         | 23 +++++++++++
> >  4 files changed, 84 insertions(+), 3 deletions(-)
> >  create mode 100644 meta/recipes-core/ell/files/0001-unit-don-t-specify-tcp-hostname-in-dbus-config.patch
> >  create mode 100644 meta/recipes-core/ell/files/run-ptest
> > 
> > diff --git a/meta/conf/distro/include/ptest-packagelists.inc b/meta/conf/distro/include/ptest-packagelists.inc
> > index da6fa6ee9723..c60575a45cc2 100644
> > --- a/meta/conf/distro/include/ptest-packagelists.inc
> > +++ b/meta/conf/distro/include/ptest-packagelists.inc
> > @@ -15,6 +15,7 @@ PTESTS_FAST = "\
> >      cpio \
> >      diffstat \
> >      diffutils \
> > +    ell \
> >      ethtool \
> >      expat \
> >      expect \
> > diff --git a/meta/recipes-core/ell/ell_0.66.bb b/meta/recipes-core/ell/ell_0.66.bb
> > index 899e2f684936..d53db2edc189 100644
> > --- a/meta/recipes-core/ell/ell_0.66.bb
> > +++ b/meta/recipes-core/ell/ell_0.66.bb
> > @@ -10,9 +10,28 @@ SECTION = "libs"
> >  LICENSE  = "LGPL-2.1-only"
> >  LIC_FILES_CHKSUM = "file://COPYING;md5=fb504b67c50331fc78734fed90fb0e09"
> >  
> > -DEPENDS = "dbus"
> > +DEPENDS = "dbus openssl-native xxd-native"
> >  
> > -inherit autotools pkgconfig
> > +inherit autotools pkgconfig ptest
> >  
> > -SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz"
> > +SRC_URI = " \
> > +    https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz \
> > +    file://0001-unit-don-t-specify-tcp-hostname-in-dbus-config.patch \
> > +    file://run-ptest \
> > +"
> >  SRC_URI[sha256sum] = "7a78b757080ed6518c1c4fa26ad6a7a3d6e4e385386a20b6fb52379e7d1ffa36"
> > +
> > +EXTRA_OECONF += "--enable-tests --enable-maintainer-mode"
> > +CFLAGS += "-UUNITDIR -DUNITDIR="\\"./unit/\\"""
> > +
> > +do_compile:prepend() {
> > +    mkdir -p ${B}/unit
> > +}
> > +
> > +do_install_ptest() {
> > +    install -m755 -Dt ${D}${PTEST_PATH} $(find ${B}/unit -executable -type f)
> > +    install -Dt ${D}${PTEST_PATH}/unit \
> > +        ${S}/unit/dbus.conf \
> > +        ${S}/unit/settings.test \
> > +        $(find ${B}/unit -name \*.pem -type f)
> > +}
> > diff --git a/meta/recipes-core/ell/files/0001-unit-don-t-specify-tcp-hostname-in-dbus-config.patch b/meta/recipes-core/ell/files/0001-unit-don-t-specify-tcp-hostname-in-dbus-config.patch
> > new file mode 100644
> > index 000000000000..328e51683215
> > --- /dev/null
> > +++ b/meta/recipes-core/ell/files/0001-unit-don-t-specify-tcp-hostname-in-dbus-config.patch
> > @@ -0,0 +1,38 @@
> > +From d5ebbb5ea68848c5fad5517adf2f885de142a66e Mon Sep 17 00:00:00 2001
> > +From: =?UTF-8?q?Martin=20Hundeb=C3=B8ll?= <martin@geanix.com>
> > +Date: Mon, 17 Jun 2024 14:14:03 +0200
> > +Subject: [PATCH] unit: don't specify tcp hostname in dbus config
> > +To: ell@lists.linux.dev
> > +
> > +Testing dbus with no network interfaces available on the host fails
> > +with:
> > +  dbus-daemon[291]: Failed to start message bus: Failed to lookup host/port: "*:14046": Name or service not known (-2)
> > +
> > +Seems like "*" isn't a valid hostname in such cases:
> > +  https://bugs.freedesktop.org/show_bug.cgi?id=28979
> > +
> > +According to the linked issue, the fix is to simply omit the host= and
> > +bind= parameters in the config.
> > +
> > +Signed-off-by: Martin Hundeb�ll <martin@geanix.com>
> > +Upstream-Status: Submitted [https://lore.kernel.org/ell/20240617122939.1249697-1-martin@geanix.com/]
> > +---
> > + unit/dbus.conf | 2 +-
> > + 1 file changed, 1 insertion(+), 1 deletion(-)
> > +
> > +diff --git a/unit/dbus.conf b/unit/dbus.conf
> > +index 5fe41a9ad6a6..3651e44538b1 100644
> > +--- a/unit/dbus.conf
> > ++++ b/unit/dbus.conf
> > +@@ -7,7 +7,7 @@
> > +   <allow_anonymous />
> > + 
> > +   <listen>unix:path=/tmp/ell-test-bus</listen>
> > +-  <listen>tcp:host=localhost,bind=*,port=14046,family=ipv4</listen>
> > ++  <listen>tcp:port=14046</listen>
> > +   <apparmor mode="disabled" />
> > + 
> > +   <policy context="default">
> > +-- 
> > +2.45.2
> > +
> > diff --git a/meta/recipes-core/ell/files/run-ptest b/meta/recipes-core/ell/files/run-ptest
> > new file mode 100644
> > index 000000000000..5b3acdd98b8a
> > --- /dev/null
> > +++ b/meta/recipes-core/ell/files/run-ptest
> > @@ -0,0 +1,23 @@
> > +#!/bin/sh
> > +
> > +ret_val=0
> > +
> > +for test in test-*; do
> > +    case "$test" in
> > +        test-pem | test-key)
> > +            if ! [ -d /sys/module/pkcs8_key_parser ]; then
> > +                echo "SKIP: $test"
> > +                continue
> > +            fi
> > +            ;;
> > +    esac
> > +
> > +    if "./$test" >> ell_test.log 2>&1; then
> > +        echo "PASS: $test"
> > +    else
> > +        echo "FAIL: $test"
> > +        ret_val=1
> > +    fi
> > +done
> > +
> > +exit $ret_val
> > -- 
> > 2.45.2
> > 
> 
> > 
> > 
> > 
> 
> 
> -- 
> Alexandre Belloni, co-owner and COO, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#200878): https://lists.openembedded.org/g/openembedded-core/message/200878
> Mute This Topic: https://lists.openembedded.org/mt/106720607/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 


-- 
Alexandre Belloni, co-owner and COO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com


  parent reply	other threads:[~2024-06-18 16:53 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-17 13:36 [PATCH 1/3] ofono: upgrade 2.7 -> 2.8 Martin Hundebøll
2024-06-17 13:36 ` [PATCH 2/3] ell: add ptest Martin Hundebøll
2024-06-18 15:54   ` [OE-core] " Alexandre Belloni
     [not found]   ` <17DA243CAF230652.27929@lists.openembedded.org>
2024-06-18 16:53     ` Alexandre Belloni [this message]
2024-06-17 13:36 ` [PATCH 3/3] ofono: add ptests Martin Hundebøll
2024-06-18  7:31   ` [OE-core] " Alexandre Belloni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240618165343c5b1eb1d@mail.local \
    --to=alexandre.belloni@bootlin.com \
    --cc=martin@geanix.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox