summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiří Klimeš <jklimes@redhat.com>2015-08-25 16:10:40 +0200
committerJiří Klimeš <jklimes@redhat.com>2015-09-09 16:28:01 +0200
commit28361e9238a33154b1e08edcd069dc6e5a0f19d6 (patch)
tree172f52199e8ef062dfbc99b949955ffb1230b597
parente0fe47b74e92e9614717a3d918eed3fc0bc6b2ea (diff)
downloadNetworkManager-28361e9238a33154b1e08edcd069dc6e5a0f19d6.tar.gz
manager: call nm_device_realize() also for generic devices
Without that the device is not properly initialized. It misses hardware address and type description. Testcase: $ sudo ip link add dummy0 type dummy $ nmcli device DEVICE TYPE STATE CONNECTION em1 ethernet connected Ethernet connection 1 FF wifi connected -- bond0 bond unmanaged -- bond1 bond unmanaged -- dummy0 unmanaged -- lo unmanaged -- Fixes: e8139f56c26ae3bcc5e14abdb29970ae07e93299
-rw-r--r--src/nm-manager.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/nm-manager.c b/src/nm-manager.c
index 871bda39d3..ed05b7932a 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
@@ -1885,11 +1885,6 @@ platform_link_added (NMManager *self,
g_clear_error (&error);
}
return;
- } else if (!nm_device_realize (device, plink, &error)) {
- nm_log_warn (LOGD_HW, "%s: factory failed to create device: %s",
- plink->name, error->message);
- g_clear_error (&error);
- return;
}
}
@@ -1913,7 +1908,13 @@ platform_link_added (NMManager *self,
if (device) {
if (nm_plugin_missing)
nm_device_set_nm_plugin_missing (device, TRUE);
- add_device (self, device, plink->type != NM_LINK_TYPE_LOOPBACK);
+ if (nm_device_realize (device, plink, &error))
+ add_device (self, device, plink->type != NM_LINK_TYPE_LOOPBACK);
+ else {
+ nm_log_warn (LOGD_HW, "%s: failed to realize device: %s",
+ plink->name, error->message);
+ g_clear_error (&error);
+ }
g_object_unref (device);
}
}