https://www.man7.org/linux/man-pages/man8/systemd-udev-settle.service.8.html
Using this service is not recommended. There can be no guarantee that hardware is fully discovered at any specific time, because the kernel does hardware detection asynchronously, and certain buses and devices take a very long time to become ready, and also additional hardware may be plugged in at any time. Instead, services should subscribe to udev events and react to any new hardware as it is discovered. Services that, based on configuration, expect certain devices to appear, may warn or report failure after a timeout. This timeout should be tailored to the hardware type. Waiting for systemd-udev-settle.service usually slows boot significantly, because it means waiting for all unrelated events too.
/lib/systemd/system/zfs-mount.service shows:
After=systemd-udev-settle.service
Is there a workaround such that ZFS will still work, but we can systemctl mask systemd-udev-settle.service? On my system, it is the biggest contributor to boot time at 4.377 seconds.
sudo systemd-analyze blame
4.377s systemd-udev-settle.service
Or has systemd-udev-settle.service been updated and is no longer deprecated?