Comment 4 for bug 1669564

Revision history for this message
Ryan Harper (raharper) wrote : Re: [Bug 1669564] Re: udevadm trigger subsystem-match=net doesn't always run rules

On Tue, Mar 7, 2017 at 6:27 AM, Dimitri John Ledkov <email address hidden>
wrote:

> Should one not restart systemd-networkd after writing out .link et.al.
> units?
>

systemd-networkd only deals with .netdev and .network files; .link files
are handled by udev

This occurs during boot, before systemd-networkd starts.

cloud-init-local.service runs before network-pre.target and writes out a
/etc/netplan/nplan.yaml,
invokes `netplan generate` which writes out
/run/systemd/network/10-netplan-xx.{.link,network,netdev}
as needed; however, the cold plug of devices (systemd-udev-trigger.service)
happens prior to
cloud-init-local.service; as it's required for mounting the rootfs among
other things.

The udev service is also used for device renaming, which would need to
occur before starting
networkd. As such, in cloud-init-local, after generating netplan
configuration, we re-trigger
the net subsystem events which *should* process any .link files.

The bug, I believe, is that during cloud-init-local execution, udev does
*not* process the .link files
prior to starting systemd.

I'm currently working around this using the side-effect of using udevamd
test-builtin setup_net_link
which will process the .link files.

I'll collect a journal and attach it.

>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1669564
>
> Title:
> udevadm trigger subsystem-match=net doesn't always run rules
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/
> 1669564/+subscriptions
>