mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-07-21 10:14:41 +00:00
team: don't try to connect to teamd in update_connection()
In constructed(), NMDevice starts watching the D-Bus name owner or
monitoring the unix socket, and so it is always aware if teamd is
running. When it is, NMDevice connects to it and initializes
priv->tdc.
It is not useful to try to connect to teamd in update_connection()
because warnings will be generated by NM and by libteam if teamd is
not running. As explained above the connection is always initialized
when teamd is available, and so we can just check priv->tdc.
Fixes: ab586236e3
('core: implement update_connection() for Team')
https://bugzilla.redhat.com/show_bug.cgi?id=2182029
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1631
This commit is contained in:
parent
7a6257d446
commit
93430627c2
|
@ -226,24 +226,10 @@ update_connection(NMDevice *device, NMConnection *connection)
|
|||
NMDeviceTeam *self = NM_DEVICE_TEAM(device);
|
||||
NMSettingTeam *s_team = _nm_connection_ensure_setting(connection, NM_TYPE_SETTING_TEAM);
|
||||
NMDeviceTeamPrivate *priv = NM_DEVICE_TEAM_GET_PRIVATE(self);
|
||||
struct teamdctl *tdc = priv->tdc;
|
||||
GError *error = NULL;
|
||||
|
||||
/* Read the configuration only if not already set */
|
||||
if (!priv->config) {
|
||||
if (ensure_teamd_connection(device, &error)) {
|
||||
teamd_read_config(self);
|
||||
} else {
|
||||
_LOGD(LOGD_TEAM, "could not connect to teamd: %s", error->message);
|
||||
g_clear_error(&error);
|
||||
}
|
||||
}
|
||||
|
||||
/* Restore previous tdc state */
|
||||
if (priv->tdc && !tdc) {
|
||||
teamdctl_disconnect(priv->tdc);
|
||||
teamdctl_free(priv->tdc);
|
||||
priv->tdc = NULL;
|
||||
if (!priv->config && priv->tdc) {
|
||||
teamd_read_config(self);
|
||||
}
|
||||
|
||||
g_object_set(G_OBJECT(s_team), NM_SETTING_TEAM_CONFIG, _get_config(self), NULL);
|
||||
|
|
Loading…
Reference in a new issue