FS#76834 - [systemd] Long waiting for initrd-root-fs.target on boot

Attached to Project: Arch Linux
Opened by Joël (Morta1985) - Thursday, 15 December 2022, 11:00 GMT
Last edited by Toolybird (Toolybird) - Monday, 19 December 2022, 21:41 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To No-one
Architecture All
Severity Critical
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No


Boot works properly with systemd252.1-2 and from 252.1

Additional info:
* package version(s) systemd252.2-1 till 252.3-1 and probably newer versions
* config and/or log files etc.
* link to upstream bug report, if any
Steps to reproduce:
This task depends upon

Closed by  Toolybird (Toolybird)
Monday, 19 December 2022, 21:41 GMT
Reason for closing:  None
Additional comments about closing:  See comments
Comment by Toolybird (Toolybird) - Thursday, 15 December 2022, 21:37 GMT
Possibly related  FS#76792 , although the problem there seems to be between 252.2-3 -> 252.3-1. Can you try the workaround mentioned in that ticket?

In your case, the problem seems to be between 252.1-2 > 252.2–1

Either way, you're going to have to debug this issue yourself (or with help from the forum) because you haven't supplied enough detailed information to identify an Arch packaging bug. This bug tracker is not for support.

If you are *certain* that systemd is the cause, you can use git bisection [1] to identify which systemd commit broke it. Also please keep in mind, if you are downgrading other pkgs (e.g. kernel, mkinitcpio) then systemd might *not* be the culprit.

[1] https://wiki.archlinux.org/title/Bisecting_bugs_with_Git
Comment by Joël (Morta1985) - Monday, 19 December 2022, 19:38 GMT
git bisect bad

3ec3ae68d2cea32461d779645a737d57160631bf is the first bad commit
commit 3ec3ae68d2cea32461d779645a737d57160631bf
Author: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Date: Thu May 19 09:50:48 2022 +0200

basic/strv: add optimizable version of strv_push/consume/extend

This will be helpful in cases where we are repeatedly adding entries
to a long strv and want to skip the iteration over old entries leading
to quadratic behaviour.

Note that we don't want to calculate the length if not necessary, so
the calculation is delayed until after we've checked that value is not

src/basic/strv.c | 30 ++++++++++++++++++------------
src/basic/strv.h | 24 +++++++++++++++++++++---
src/test/test-strv.c | 43 +++++++++++++++++++++++++++++++++++++++++++
3 files changed, 82 insertions(+), 15 deletions(-)
Comment by Toolybird (Toolybird) - Monday, 19 December 2022, 21:41 GMT
> git bisect bad


You have to keep on bisecting (git bisect good, git bisect bad, etc) until it tells you which is the first bad commit. This is all documented in the man page [1]. Please be *very* careful about posting wrong information upstream...otherwise you are just wasting developer time.

Closing for now. You can request for this ticket to be reopened if you reach a conclusion via the forum.

[1] https://man.archlinux.org/man/git-bisect.1