Dear all I was recently working on reducing booting time and I see one issue that I think is worth discussing.
The problem is the device units enumeration seems to take a long time (>100ms in our case) before any units are beginning to start. I think there is some potential for improvement there. I see that on the system I use for testing the user instance of systemd is doing an enumeration of devices as well. Since no matter if the systemd is pid 1 or user instance, it loads the same set of units which are tagged 'systemd' in udev, if I understand correctly. In user session, however, no unit seems to depend on device units, so the whole effort of creating them is for nothing. My guess is that for many use cases the device units are not needed by session services. One of the options that I can think of is to delay the coldplug a bit and do it in paralel with all the units loading. As for now, the device enumeration happens at the very beginning of systemd lifecycle, along with other unit loading. But comparing to loading unit files this looks like a time-consuming operation. So here is the question: is this a safe thing to do? I wonder if trying to start units without having device units created would break something in systemd. And did anyone considered this issue before? I would be happy to hear your ideas. Best Regards, Paweł Szewczyk _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/systemd-devel