chiark / gitweb /
networkd: improve logging
authorTom Gundersen <teg@jklm.no>
Fri, 3 Jan 2014 15:38:18 +0000 (16:38 +0100)
committerTom Gundersen <teg@jklm.no>
Fri, 3 Jan 2014 15:56:09 +0000 (16:56 +0100)
This gives a bit better messages when a link is added twice.

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

index f0fb0d93e670479f56d4e3aa2fcac58e3dd5b85e..889efc8c2f060a968bff74aebaae4623ffe7a209 100644 (file)
@@ -102,13 +102,11 @@ int link_add(Manager *m, struct udev_device *device) {
         ifindex = udev_device_get_ifindex(device);
         link = hashmap_get(m->links, &ifindex);
         if (link)
         ifindex = udev_device_get_ifindex(device);
         link = hashmap_get(m->links, &ifindex);
         if (link)
-                return 0;
+                return -EEXIST;
 
         r = link_new(m, device, &link);
 
         r = link_new(m, device, &link);
-        if (r < 0) {
-                log_error("Could not create link: %s", strerror(-r));
+        if (r < 0)
                 return r;
                 return r;
-        }
 
         devtype = udev_device_get_devtype(device);
         if (streq_ptr(devtype, "bridge")) {
 
         devtype = udev_device_get_devtype(device);
         if (streq_ptr(devtype, "bridge")) {
index e9944973ad16666faf38f8913a89847b28d84481..11c3efe901666678e461fd081e58d25ea7778ee2 100644 (file)
@@ -143,14 +143,17 @@ static int manager_process_link(Manager *m, struct udev_device *device) {
 
                 link_free(link);
         } else {
 
                 link_free(link);
         } else {
-                log_debug("%s: link added", udev_device_get_sysname(device));
-
                 r = link_add(m, device);
                 if (r < 0) {
                 r = link_add(m, device);
                 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",
+                                          udev_device_get_sysname(device));
+                        else
+                                log_error("%s: could not handle link: %s",
+                                          udev_device_get_sysname(device),
+                                          strerror(-r));
+                } else
+                        log_debug("%s: link added", udev_device_get_sysname(device));
         }
 
         return 0;
         }
 
         return 0;