diff options
author | Beniamino Galvani <bgalvani@redhat.com> | 2019-04-09 16:15:46 +0200 |
---|---|---|
committer | Beniamino Galvani <bgalvani@redhat.com> | 2019-04-09 16:40:17 +0200 |
commit | 0d6e49796297b36b6efb3f9fd27ecf6fc8b6b073 (patch) | |
tree | 62ed10d4442777dd9c8a93f1407becc181a00dbe | |
parent | b1f556bae238afdb4bcea9821e429df00ec9f2ae (diff) | |
download | NetworkManager-bg/rh1697900.tar.gz |
team: clean up state when connection to teamd failsbg/rh1697900
If NM fails to connect to teamd, it currently just sets the device
state to FAILED and waits that deactivate() is called later. However,
the 5 seconds timeout on teamd process start can hit in the meantime,
which fails with an assertion "nm_device_is_activating (device)".
Clean up the device state when the connection to teamd fails.
https://bugzilla.redhat.com/show_bug.cgi?id=1697900
-rw-r--r-- | src/devices/team/nm-device-team.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/devices/team/nm-device-team.c b/src/devices/team/nm-device-team.c index 38a6dd8c6c..402be1ef55 100644 --- a/src/devices/team/nm-device-team.c +++ b/src/devices/team/nm-device-team.c @@ -408,8 +408,10 @@ teamd_dbus_appeared (GDBusConnection *connection, success = teamd_read_config (device); if (success) nm_device_activate_schedule_stage2_device_config (device); - else if (!nm_device_sys_iface_state_is_external_or_assume (device)) + else if (!nm_device_sys_iface_state_is_external_or_assume (device)) { + teamd_cleanup (device, TRUE); nm_device_state_changed (device, NM_DEVICE_STATE_FAILED, NM_DEVICE_STATE_REASON_TEAMD_CONTROL_FAILED); + } } } |