!PSmBFWNKoXmlQBzUQf:helsinki-systems.de

Stage 1 systemd

88 Members
systemd in NixOs's stage 1, replacing the current bash tooling https://github.com/NixOS/nixpkgs/projects/5130 Servers

Load older messages


SenderMessageTime
15 Jun 2023
@elvishjerricco:matrix.org@elvishjerricco:matrix.org
In reply to @lily:lily.flowers
Would you mind nabbing logs with plymouth:debug on the kernel cmdline sometime?
$ journalctl -b 0 | grep -i plymouth
Jun 15 15:31:59 localhost kernel: Command line: initrd=\efi\nixos\xdmzixriby5jk6jxvd3m79ciryndjnfm-initrd-linux-6.3.7-initrd.efi init=/nix/store/qr8c7ccym056dricl45qlc9kni6w4r8b-nixos-system-jace-23.11.20230615.c5ca97a/init delayacct quiet nohibernate splash loglevel=0 plymouth:debug
Jun 15 15:31:59 localhost kernel: Kernel command line: initrd=\efi\nixos\xdmzixriby5jk6jxvd3m79ciryndjnfm-initrd-linux-6.3.7-initrd.efi init=/nix/store/qr8c7ccym056dricl45qlc9kni6w4r8b-nixos-system-jace-23.11.20230615.c5ca97a/init delayacct quiet nohibernate splash loglevel=0 plymouth:debug
Jun 15 15:31:59 localhost kernel: Unknown kernel command line parameters "splash plymouth:debug", will be passed to user space.
Jun 15 15:31:59 localhost kernel:     plymouth:debug
Jun 15 15:31:59 localhost systemd[1]: Tell Plymouth To Write Out Runtime Data was skipped because of an unmet condition check (ConditionPathExists=!/etc/initrd-release).
Jun 15 15:31:59 localhost systemd[1]: Starting Show Plymouth Boot Screen...
Jun 15 15:31:59 localhost plymouthd[373]: 00:00:00.496 ../src/main.c:1956:check_verbosity                            : redirecting debug output to /dev/tty1
Jun 15 15:31:59 localhost plymouthd[373]: xkbcommon: ERROR: failed to add default include path /nix/store/0zl3x9ggy4sdik97cgbijkalllmkw70b-xkeyboard-config-2.33/etc/X11/xkb
Jun 15 15:31:59 localhost plymouth[374]: 00:00:00.507 ../src/libply/ply-event-loop.c:766:ply_event_loop_stop_watchin: stopping watching fd 6
Jun 15 15:31:59 localhost plymouth[374]: 00:00:00.507 ../src/libply/ply-event-loop.c:782:ply_event_loop_stop_watchin: removing destination for fd 6
Jun 15 15:31:59 localhost plymouth[374]: 00:00:00.507 ../src/libply/ply-event-loop.c:766:ply_event_loop_stop_watchin: stopping watching fd 6
Jun 15 15:31:59 localhost plymouth[374]: 00:00:00.507 ../src/libply/ply-event-loop.c:782:ply_event_loop_stop_watchin: removing destination for fd 6
Jun 15 15:31:59 localhost plymouth[374]: 00:00:00.507 ../src/client/ply-boot-client.c:807:ply_boot_client_detach_fro: detaching from event loop
Jun 15 15:31:59 localhost systemd[1]: Started Show Plymouth Boot Screen.
Jun 15 15:31:59 localhost systemd[1]: Dispatch Password Requests to Console Directory Watch was skipped because of an unmet condition check (ConditionPathExists=!/run/plymouth/pid).
Jun 15 15:31:59 localhost systemd[1]: Started Forward Password Requests to Plymouth Directory Watch.
Jun 15 15:32:03 localhost systemd[1]: Started Forward Password Requests to Plymouth.
Jun 15 15:32:07 localhost plymouthd[373]: Fontconfig warning: no <cachedir> elements found. Check configuration.
Jun 15 15:32:07 localhost plymouthd[373]: Fontconfig warning: adding <cachedir>/var/cache/fontconfig</cachedir>
Jun 15 15:32:07 localhost plymouthd[373]: Fontconfig warning: adding <cachedir prefix="xdg">fontconfig</cachedir>
Jun 15 15:32:10 jace systemd[1]: Starting Plymouth switch root service...
Jun 15 15:32:10 jace systemd[1]: Finished Plymouth switch root service.
Jun 15 15:32:10 jace systemd[1]: systemd-ask-password-plymouth.service: Deactivated successfully.
Jun 15 15:32:10 jace systemd[1]: Dispatch Password Requests to Console Directory Watch was skipped because of an unmet condition check (ConditionPathExists=!/run/plymouth/pid).
Jun 15 15:32:10 jace systemd[1]: plymouth-switch-root.service: Deactivated successfully.
Jun 15 15:32:10 jace systemd[1]: Stopped Plymouth switch root service.
Jun 15 15:32:11 jace systemd[1]: Starting Tell Plymouth To Write Out Runtime Data...
Jun 15 15:32:11 jace plymouth[1643]: 00:00:12.595 ../src/libply/ply-event-loop.c:766:ply_event_loop_stop_watchin: stopping watching fd 6
Jun 15 15:32:11 jace plymouth[1643]: 00:00:12.595 ../src/libply/ply-event-loop.c:782:ply_event_loop_stop_watchin: removing destination for fd 6
Jun 15 15:32:11 jace plymouth[1643]: 00:00:12.596 ../src/libply/ply-event-loop.c:766:ply_event_loop_stop_watchin: stopping watching fd 6
Jun 15 15:32:11 jace plymouth[1643]: 00:00:12.596 ../src/libply/ply-event-loop.c:782:ply_event_loop_stop_watchin: removing destination for fd 6
Jun 15 15:32:11 jace plymouth[1643]: 00:00:12.596 ../src/client/ply-boot-client.c:807:ply_boot_client_detach_fro: detaching from event loop
Jun 15 15:32:11 jace systemd[1]: Finished Tell Plymouth To Write Out Runtime Data.
Jun 15 15:32:11 jace systemd[1]: Dispatch Password Requests to Console Directory Watch was skipped because of an unmet condition check (ConditionPathExists=!/run/plymouth/pid).
Jun 15 15:32:16 jace plymouth[2047]: 00:00:17.568 ../src/client/plymouth.c:425:on_disconnect                    : disconnect
Jun 15 15:32:16 jace plymouth[2047]: 00:00:17.568 ../src/libply/ply-event-loop.c:1143:ply_event_loop_free_destin: freeing destination (0, (nil), 0x403d30) of fd 6
Jun 15 15:32:16 jace plymouth[2047]: 00:00:17.568 ../src/client/ply-boot-client.c:807:ply_boot_client_detach_fro: detaching from event loop
19:36:25
@lily:lily.flowers@lily:lily.flowers
In reply to @elvishjerricco:matrix.org
since it's changing the default of an existing option
Yeah I was wondering if that's what the goal was and if there was just a better way to accomplish that as well. If I remember I'll try to give a proper review later (I mostly just did a quick once-over)
19:37:46
@elvishjerricco:matrix.org@elvishjerricco:matrix.org I believe the gap between Started Show Plymouth Boot Screen. and Fontconfig warning: no <cachedir> elements found. Check configuration. is the gap where nothing is happening. I see some of these plymouth debug messages on screen, and then it stays like that for about 8 seconds, and then the password prompt suddenly shows up. 19:38:09
@lily:lily.flowers@lily:lily.flowers
In reply to @elvishjerricco:matrix.org
I believe the gap between Started Show Plymouth Boot Screen. and Fontconfig warning: no <cachedir> elements found. Check configuration. is the gap where nothing is happening. I see some of these plymouth debug messages on screen, and then it stays like that for about 8 seconds, and then the password prompt suddenly shows up.
Weird... Yeah I don't know any potential causes off the top of my head
19:39:00
@ulli:hrnz.li@ulli:hrnz.li set a profile picture.22:19:56
16 Jun 2023
@uep:matrix.org@uep:matrix.org
In reply to @elvishjerricco:matrix.org
So the message can calculate which mountpoints are busted

https://github.com/NixOS/nixpkgs/pull/238021

I punted on the calculation for now, as much as I'm in favour of better errors for nixos in particular. But the message text seems sufficient

00:52:22
22 Jun 2023
@nikstur:matrix.org@nikstur:matrix.org I have a curious issue with the systemd initrd. The 9p mounts break when I start a VM with virtualisation.diskImage = null; and I have absolutely no idea how why where and what is going on. It works if the root is not volatile (so not a tmpfs). I only found this message: 9pnet_virtio: no channels available for device which sounds like kmods are missing. 09:04:19
@nikstur:matrix.org@nikstur:matrix.orgAny ideas?09:04:45
@gdamjan:spodeli.org@gdamjan:spodeli.orgdo you have the virtio_pci and/or virtio_mmio loaded?09:53:29
@gdamjan:spodeli.org@gdamjan:spodeli.org9pnet_virtio uses virtio to communicate to the host, but virtio_pci, virtio_mmio provide the virtio transport to the guest drivers.09:56:20
@nikstur:matrix.org@nikstur:matrix.org The qemu-vm module should take care of this. And even if I add the module to boot.initrd.availbleKernelModules it doesnt work. However, it works if / is NOT on a tmpfs. I can't make the connect between tmpfs and 9p failing 10:14:40
@nikstur:matrix.org@nikstur:matrix.orgOh and it also works with the legacy scripted initrd. So there is definetely something going on in the systemd initrd.10:22:42
@colemickens:matrix.orgcolemickensOoh I know this one.12:55:42
@colemickens:matrix.orgcolemickensYou need a special kernel module for PCI in qemu12:56:00
@colemickens:matrix.orgcolemickenshttps://github.com/colemickens/nixcfg/blob/main/modules/other-arch-vm.nix#L6812:58:20
@colemickens:matrix.orgcolemickensThat finally fixed the no channels available for me, I'm pretty sure12:58:56
@lily:lily.flowers@lily:lily.flowersDo we need to add that to the qemu-vm modules then?13:01:19
@colemickens:matrix.orgcolemickensI think that might make sense, yeah13:01:58
@gdamjan:spodeli.org@gdamjan:spodeli.orgbut IIRC there was an option for qemu to use the mmio virtio without pci at all?13:08:09
@lily:lily.flowers@lily:lily.flowers Seems weird it would only happen with tmpfs and only with systemd-initrd too, but idk I'd have to poke at it. Does adding that one module actually fix your issue nikstur? 13:10:32
@nikstur:matrix.org@nikstur:matrix.org I don't know where "pci-host-generic" comes from, but it doesn't seem to be in the normal kernel build: FATAL: Module pci-host-generic not found in directory /nix/store/w37l1l2g8ysm54ccrq4q4bj06wjhcl2y-linux-6.1.34-modules/lib/modules/6.1.34 13:21:46
@nikstur:matrix.org@nikstur:matrix.org
In reply to @lily:lily.flowers
Seems weird it would only happen with tmpfs and only with systemd-initrd too, but idk I'd have to poke at it. Does adding that one module actually fix your issue nikstur?

I also can't make the connection there. This is where it works and doesnt:

  • legacy-initrd without tmpfs / -> works
  • legacy-initrd with tmpfs / -
13:23:00
@nikstur:matrix.org@nikstur:matrix.org
In reply to @lily:lily.flowers
Seems weird it would only happen with tmpfs and only with systemd-initrd too, but idk I'd have to poke at it. Does adding that one module actually fix your issue nikstur?
*

I also can't make the connection there. This is where it works and doesnt:

  • legacy-initrd without tmpfs / -> works
  • legacy-initrd with tmpfs / -> works
  • sd-initrd wihtout tmpfs / -> works
  • sd-initrd with tmpfs / -> doesn't work
13:23:22
@nikstur:matrix.org@nikstur:matrix.org *

I also can't make the connection there. This is where it works and doesnt:

  • legacy-initrd without tmpfs / -> works
  • legacy-initrd with tmpfs / -> works
  • sd-initrd without tmpfs / -> works
  • sd-initrd with tmpfs / -> doesn't work
13:23:38
@lily:lily.flowers@lily:lily.flowers
In reply to @nikstur:matrix.org

I also can't make the connection there. This is where it works and doesnt:

  • legacy-initrd without tmpfs / -> works
  • legacy-initrd with tmpfs / -> works
  • sd-initrd without tmpfs / -> works
  • sd-initrd with tmpfs / -> doesn't work
Can you share full boot logs? Or provide a system derivation to reproduce so we can poke at it?
13:28:07
@nikstur:matrix.org@nikstur:matrix.orghttps://github.com/NixOS/nixpkgs/pull/23884813:28:44
@nikstur:matrix.org@nikstur:matrix.org Didnt get around to parameterize it for sd-initrd yet but if you just manually set boot.initrd.systemd.enable = true it fails 13:29:09
@lily:lily.flowers@lily:lily.flowersIf no one else does, I'll take a look and poke a little in about an hour or two when I'm done with a thing at $dayjob13:31:09
@lily:lily.flowers@lily:lily.flowersAlright so you're gonna hate this and I think it may be a kernel bug17:24:35
@lily:lily.flowers@lily:lily.flowers

It works with this snippet:

    boot.initrd.kernelModules = [ "9p" "9pnet_virtio" ];
    boot.initrd.systemd.services.systemd-modules-load.before = [ "sysroot.mount" ];
    boot.initrd.systemd.services.systemd-modules-load.serviceConfig.ExecStartPost = "${pkgs.coreutils}/bin/sleep 5";
17:24:52

Show newer messages


Back to Room ListRoom Version: 6