X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fnetwork%2Fnetworkd-manager.c;h=7b0c5d76537b527f76af726c255850dd46ba6ed7;hb=aa3437a573ed2a2b2a03c9649fe11d27b40a772b;hp=e9944973ad16666faf38f8913a89847b28d84481;hpb=d0d311d62f5d922dba97f0023c068e2bf90e7803;p=elogind.git diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c index e9944973a..7b0c5d765 100644 --- a/src/network/networkd-manager.c +++ b/src/network/networkd-manager.c @@ -143,14 +143,18 @@ static int manager_process_link(Manager *m, struct udev_device *device) { link_free(link); } else { - log_debug("%s: link added", udev_device_get_sysname(device)); - - r = link_add(m, device); + r = link_add(m, device, &link); if (r < 0) { - log_error("Could not handle link %s: %s", - udev_device_get_sysname(device), - strerror(-r)); - } + if (r == -EEXIST) + log_debug("%s: link already exists, ignoring", + link->ifname); + else + log_error("%s: could not handle link: %s", + udev_device_get_sysname(device), + strerror(-r)); + } else + log_debug("%s: link (with ifindex %" PRIu64") added", + link->ifname, link->ifindex); } return 0;