[systemd-devel] Making udev emit a signal when it is done loading modules
Lennart Poettering
lennart at poettering.net
Tue Jan 27 17:38:52 PST 2015
On Sat, 17.01.15 17:03, Zbigniew Jędrzejewski-Szmek (zbyszek at in.waw.pl) wrote:
> On Sat, Jan 17, 2015 at 09:44:00AM +0100, Hans de Goede wrote:
> > We would like
> > udev to emit a signal (ABI to be discussed) when it is done
> > trying to load modules for everything which was already enumerated
> > when it starts, iow when there are no new device events pending
> > anymore when udev does its initial hotplug replay.
> I think you can just create a unit like:
>
> # disable-new-hardware.service
> [Unit]
> After=systemd-udev-settle.service systemd-modules-load.service
> Wants=systemd-udev-settle.service
>
> [Service]
> Type=oneshot
> RemainAfterExit=yes
> ExecStart=/usr/local/bin/ping-the-kernel
>
> > So the question to you is would you be willing to include such
> > functionality in udev?
> I don't think udevd has enough knowledge. But a systemd unit like
> the one above should work.
To clarify this: if people do this, then this pulls in
systemd-udev-settle.service, which slows down boot. Every service that
does that is hence a majour source of slowness.
It's a hack to use this, not a solution.
Lennart
--
Lennart Poettering, Red Hat
More information about the systemd-devel
mailing list