All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.