From: Mikko Rapeli <mikko.rapeli@linaro.org>
To: richard.purdie@linuxfoundation.org
Cc: alex.kiernan@gmail.com, uvv.mail@gmail.com,
Jon Mason <Jon.Mason@arm.com>,
Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>,
Ross Burton <Ross.Burton@arm.com>,
"Openembedded-core@lists.openembedded.org"
<Openembedded-core@lists.openembedded.org>
Subject: Re: [OE-core] [PATCH v6] systemd: Build the systemctl executable
Date: Tue, 25 Feb 2025 14:23:11 +0200 [thread overview]
Message-ID: <Z722L5ZlyawC1clp@nuoska> (raw)
In-Reply-To: <73881478fdd87961e0b3252ac973327874aeba80.camel@linuxfoundation.org>
Hi,
On Tue, Feb 25, 2025 at 11:21:59AM +0000, Richard Purdie via lists.openembedded.org wrote:
> On Thu, 2025-02-20 at 16:03 +0000, Alex Kiernan via lists.openembedded.org wrote:
> > On Thu, Feb 20, 2025 at 3:52 PM Vyacheslav Yurkov via
> > lists.openembedded.org <uvv.mail=gmail.com@lists.openembedded.org>
> > wrote:
> > >
> > > From meta/classes-recipe/rootfs-postcommands.bbclass:
> > >
> > > # 20:12 < mezcalero> koen: you have three options: a) run
> > > systemd-machine-id-setup at install time, b) have / read-only and an
> > > empty file there (for stateless) and c) boot with / writable
> > > touch ${IMAGE_ROOTFS}${sysconfdir}/machine-id
> > > fi
> > >
> > > We could think of further improvements. One thing that comes to mind is
> > > changing systemd-systemctl-native to systemd-tools-native and enable the
> > > build of systemd-machine-id-setup.
> > >
> > > Slava
> > >
> >
> > I do know that it was a horrible thing to get right when I rewrote the
> > shell script in python (which I'm very glad to see the back of):
> >
> > # If we populate the systemd links we also create /etc/machine-id, which
> > # allows systemd to boot with the filesystem read-only before generating
> > # a real value and then committing it back.
> > #
> > # For the stateless configuration, where /etc is generated at runtime
> > # (for example on a tmpfs), this script shouldn't run at all and we
> > # allow systemd to completely populate /etc.
> >
> > It may be that this behaviour was wrong in some cases, but at the same
> > time, I remember spending a lot of time getting this right!
>
> I just wanted to add that we've been seeing an odd failure on meta-arm on the autobuilder:
>
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/75/builds/1032
>
> and when I did into this, I see this in the logs:
>
> [ 3.700441] systemd[1]: Hostname set to <sbsa-ref>.
> [ 3.704040] systemd[1]: System cannot boot: Missing /etc/machine-id and /etc is mounted read-only.
> [ 3.704488] systemd[1]: Booting up is supported only when:
> [ 3.705023] systemd[1]: 1) /etc/machine-id exists and is populated.
> [ 3.705349] systemd[1]: 2) /etc/machine-id exists and is empty.
> [ 3.705651] systemd[1]: 3) /etc/machine-id is missing and /etc is writable.
> [ 10.206513] systemd[1]: Populated /etc with preset unit settings.
> [ 13.034155] systemd[1]: Queued start job for default target Graphical Interface.
> [ 13.149568] systemd[1]: Created slice Slice /system/getty.
>
> We therefore need to fix the issue with machine-id before we can merge
> this patch. I will drop it from master-next in the meantime due to this
> issue.
I think option 2) should be simple. IMO this could also be done by image/rootfs
classes or base-files when systemd is the init.
Where is build https://autobuilder.yoctoproject.org/valkyrie/#/builders/75/builds/1032
adding "read-only-rootfs" to IMAGE_FEATURES?
The failures log from step 22, full log in
https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/1586278/raw_inline
only shows issues with sshd server, which IMO is not installed to any of the
built images. The builds are IMO missing IMAGE_FEATURES += "ssh-server-dropbear"
which in meta-arm kas builds is set with ci/testimage.yml.
Even the core-image-minimal tests are passing without any communication with
target qemu machine:
* ping.PingTest.test_ping with slirp pings localhost, not target machine
* parselogs.ParseLogsTest.test_get_context doesn't talk with booted qemu machine
How to get to the qemu boot log which shows the systemd errors above?
I don't see the connection between the systemd error and the build above.
I could propose patches to the issues if I can figure out where :/
Cheers,
-Mikko
next prev parent reply other threads:[~2025-02-25 12:23 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-19 10:39 [PATCH v6] systemd: Build the systemctl executable uvv.mail
2025-02-20 14:07 ` [OE-core] " Ross Burton
2025-02-20 15:33 ` Vyacheslav Yurkov
[not found] ` <1825F47182B39BA0.23135@lists.openembedded.org>
2025-02-20 15:52 ` Vyacheslav Yurkov
2025-02-20 16:03 ` Alex Kiernan
2025-02-25 11:21 ` Richard Purdie
2025-02-25 12:23 ` Mikko Rapeli [this message]
2025-02-25 13:50 ` Richard Purdie
2025-02-25 14:48 ` Ross Burton
2025-02-26 10:43 ` Vyacheslav Yurkov
2025-02-28 15:56 ` Alexis CELLIER
2025-02-28 16:33 ` Alex Kiernan
2025-02-28 17:28 ` Alexis CELLIER
2025-02-28 21:09 ` Alex Kiernan
2025-03-04 9:27 ` Koen Kooi
2025-02-20 17:08 ` Ross Burton
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=Z722L5ZlyawC1clp@nuoska \
--to=mikko.rapeli@linaro.org \
--cc=Jon.Mason@arm.com \
--cc=Openembedded-core@lists.openembedded.org \
--cc=Ross.Burton@arm.com \
--cc=alex.kiernan@gmail.com \
--cc=mathieu.dubois-briand@bootlin.com \
--cc=richard.purdie@linuxfoundation.org \
--cc=uvv.mail@gmail.com \
/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