]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: call link_check_ready() when all stacked netdevs are created
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 7 Dec 2021 16:36:07 +0000 (01:36 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 8 Dec 2021 09:40:13 +0000 (18:40 +0900)
Follow-up for 879377cad531aabbf85a140201b0ea3ff9a8c3d2.

Otherwise, the underlying interface may stuck in configuring state.

src/network/netdev/netdev.c
src/network/networkd-link.c

index b4121dd4735d6d8d1848e5c2e67e2f15309a6e7b..8e7fe11c182e3ac2dcffac00f5c7fbe6ff5d21eb 100644 (file)
@@ -681,6 +681,7 @@ static int link_create_stacked_netdev_handler(sd_netlink *rtnl, sd_netlink_messa
         if (link->create_stacked_netdev_messages == 0) {
                 link->stacked_netdevs_created = true;
                 log_link_debug(link, "Stacked netdevs created.");
+                link_check_ready(link);
         }
 
         return 0;
index b951d9aaf0c71108bd0fe92b426b9a7fb3f30097..8ca6dc56e07e75b3e445cdb66b9253bb50e49096 100644 (file)
@@ -591,8 +591,10 @@ static int link_request_stacked_netdevs(Link *link) {
                         return r;
         }
 
-        if (link->create_stacked_netdev_messages == 0)
+        if (link->create_stacked_netdev_messages == 0) {
                 link->stacked_netdevs_created = true;
+                link_check_ready(link);
+        }
         if (link->create_stacked_netdev_after_configured_messages == 0)
                 link->stacked_netdevs_after_configured_created = true;