| 9 Nov 2022 |
@elvishjerricco:matrix.org | (sidenote, you really don't want your swap on ZFS at all) | 06:46:55 |
@uep:matrix.org | ah, damn, the laptop is doing a big update as part of the rebuild, may take a minute ore | 06:46:59 |
@uep:matrix.org | yeah, I know. Bit of legacy issue there with too-small a real swap partition | 06:47:27 |
@uep:matrix.org | the zvol is lower priority and rarely gets hit | 06:47:58 |
@uep:matrix.org | (the pool and partitioning long pre-dates nixos, it was running ubuntu zfs for years) | 06:48:54 |
@uep:matrix.org | ok, very different timing on the laptop! | 06:50:06 |
@uep:matrix.org | no wait for settling, and 🎉 no wait now for the zvol swap to appear, so faster boot overall | 06:50:33 |
@elvishjerricco:matrix.org | well that's good at least :) | 06:50:52 |
@uep:matrix.org | that was actually the reason to try, I sort of expected it might help | 06:51:25 |
@elvishjerricco:matrix.org | in theory it should | 06:51:36 |
@elvishjerricco:matrix.org | in practice it seems a second or 3 slower on a lot of people's machines | 06:51:53 |
@uep:matrix.org | clearly depends on what's in the device tree. | 06:52:22 |
@uep:matrix.org | Nov 09 17:49:44 localhost systemd[1]: Finished Coldplug All udev Devices.
Nov 09 17:49:44 localhost systemd[1]: Starting Wait for udev To Complete Device Initialization...
Nov 09 17:49:44 localhost systemd[1]: Finished Wait for udev To Complete Device Initialization.
| 06:54:34 |
@uep:matrix.org | (more messages in between of course, but the timing delay is not noticable on screen) | 06:55:02 |
@uep:matrix.org | In reply to @elvishjerricco:matrix.org the udev settle thing confused me, but then I remembered zfs pulls that in missed this before, there's even a note about it :)
Nov 09 17:49:44 localhost udevadm[132]: systemd-udev-settle.service is deprecated. Please fix zfs-import-rpool.service not to pull it in.
| 06:59:32 |
@elvishjerricco:matrix.org | yep. There's even a github issue about it: https://github.com/openzfs/zfs/issues/10891 | 07:01:00 |
@uep:matrix.org | comments in there refer to what we discussed as "incremental assembly" | 07:08:10 |
@uep:matrix.org | which is a reasonable name | 07:08:15 |
@uep:matrix.org | anyway, at least when it appears we can just use it via systemd | 07:20:01 |
@elvishjerricco:matrix.org | Yea. Stage 2 ought to be able to use the cache file in a systemd generator to just generate the device dependencies for an import service, so that probably should have been done years ago | 07:20:53 |
@elvishjerricco:matrix.org | but stage 1 can't have such a cache file | 07:21:03 |
@uep:matrix.org | https://github.com/openzfs/zfs/issues/10891#issuecomment-1226230262 | 07:28:07 |
@uep:matrix.org | this was my next thought! :) | 07:28:16 |
@uep:matrix.org | for the case of the desktop with the slow wait, it's a single nvme device that's clearly loaded. | 07:28:36 |
@uep:matrix.org | maybe a config option, off by default, to remove that dependency, usable for simple cases | 07:29:22 |
@elvishjerricco:matrix.org | uhhh we don't use the upstream zfs import services in nixos. We generate our own import services, one per pool. And while it depends on udev-settle, it shouldn't even exist if it's your root pool | 07:30:15 |
@elvishjerricco:matrix.org | so I dunno what that guy's talking about | 07:30:20 |
@elvishjerricco:matrix.org | but we can't remove it even for simple cases, because we do need to wait for the appropriate device | 07:30:56 |
@elvishjerricco:matrix.org | Now, in my system... I did hax and cheats | 07:31:10 |
@elvishjerricco:matrix.org | And mine actually properly just waits on my nvme | 07:31:18 |