| 5 Jun 2023 |
oddlama | most are :40 | 18:38:20 |
oddlama | some are :38 or :39 | 18:38:24 |
oddlama | Maybe this is when the journal from stage1 is loaded into to actual journal in stage2? | 18:39:01 |
@elvishjerricco:matrix.org | tbh I don't really understand how the journal is handed over between stages | 18:39:53 |
oddlama | Probably not relevant for this case anyway. Seems to me like networkd is stopped in stage1 and never exists in stage2, the log just seems to be carried over weirdly. | 18:41:12 |
oddlama | Hmm your hunch was right, setting flushBeforeStage2 = true; works around the issue | 18:52:44 |
@elvishjerricco:matrix.org | oddlama: interesting. Can you open an issue and include your configuration? | 18:53:27 |
oddlama | Just noticed that the systemd-networkd.service: Deactivated successfully also happens in stage2 not stage1, the log order is just also wrong there :D | 19:09:29 |
oddlama | In reply to @elvishjerricco:matrix.org oddlama: interesting. Can you open an issue and include your configuration? Not sure how I can include my configuration easily. It's publicly available on github, but too complicated to copy out a single snipped, especially because I don't really know what causes this. I can make a commit and refer to that if it helps | 19:12:40 |
@elvishjerricco:matrix.org | oddlama: Well maybe write a little test with the nixos test framework to reproduce the problem if that proves easy enough to do? If not don't worry about it and just describe the problem as best you can | 19:14:28 |
oddlama | Alright, I wrote a test for this :D | 20:38:56 |
oddlama | https://github.com/NixOS/nixpkgs/issues/236146 | 20:38:57 |
@elvishjerricco:matrix.org | oddlama: If I remove your check-flush service, and wait_for_unit on network.target instead of multi-user.target, the test passes | 20:57:14 |
@elvishjerricco:matrix.org | oh but I see. The point is that I shouldn't need systemd-networkd to be running yet for the dont-flush case to have the network preconfigured by stage 1 | 20:59:00 |
| 6 Jun 2023 |
@elvishjerricco:matrix.org | oddlama: Ok, so I think the test you made is accidentally discovering a different bug. If you change check-flush.service to have wantedBy = ["multi-user.target"]; instead of requiredBy, then the test succeeds because it doesn't cause multi-user.target to fail, and systemd-networkd.service starts just fine. So the different bug is that the network configuration is getting taken down between stages 1 and two, causing check-flush.service to fail. But systemd-networkd.service is starting fine | 00:39:02 |
@elvishjerricco:matrix.org | oh, that might be because you didn't enable systemd initrd, or inherit the netdevs part from stage 2 :P | 00:46:55 |
@elvishjerricco:matrix.org | Hm. That didn't fix it | 00:51:08 |