[systemd-devel] Making udev emit a signal when it is done loading modules

Kay Sievers kay at vrfy.org
Sat Jan 17 08:45:32 PST 2015


On Sat, Jan 17, 2015 at 5:03 PM, 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.

No, nothing new, maintained or properly working tool should use or
rely on udevadm settle. Settle is just a dirty hack to make broken
legacy tools work until they disappear.

Kay


More information about the systemd-devel mailing list