diff options
author | Beniamino Galvani <bgalvani@redhat.com> | 2022-09-27 15:58:10 +0200 |
---|---|---|
committer | Beniamino Galvani <bgalvani@redhat.com> | 2022-09-28 11:31:09 +0200 |
commit | 98197386078a471ed993d009e34e08a6aa7c22d9 (patch) | |
tree | 42b3ded032a678e6aff5b3c65882ac8ad979d4ff | |
parent | 683239166b1c0ea2b0d56ff263dc832775e19c5f (diff) |
Revert "device: restart DHCP when the MAC changes"
The commit causes problems with bridges. When a new port is attached
the MAC of the bridge possibly changes and if we restart DHCP the
bridge will get a different IP address.
Revert the change until a better solution to the original problem is
found.
This reverts commit 905adabdba033bbfc33013d0ad203bd444131dc5.
https://bugzilla.redhat.com/show_bug.cgi?id=2124443
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1401
-rw-r--r-- | src/core/devices/nm-device.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c index 3409844175..7985362ac0 100644 --- a/src/core/devices/nm-device.c +++ b/src/core/devices/nm-device.c @@ -6651,7 +6651,6 @@ device_link_changed(gpointer user_data) NMDeviceClass *klass = NM_DEVICE_GET_CLASS(self); NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE(self); gboolean ip_ifname_changed = FALSE; - gboolean hw_addr_changed; nm_auto_nmpobj const NMPObject *pllink_keep_alive = NULL; const NMPlatformLink *pllink; const char *str; @@ -6698,9 +6697,9 @@ device_link_changed(gpointer user_data) if (ifindex == nm_device_get_ip_ifindex(self)) _stats_update_counters_from_pllink(self, pllink); - had_hw_addr = (priv->hw_addr != NULL); - hw_addr_changed = nm_device_update_hw_address(self); - got_hw_addr = (!had_hw_addr && priv->hw_addr); + had_hw_addr = (priv->hw_addr != NULL); + nm_device_update_hw_address(self); + got_hw_addr = (!had_hw_addr && priv->hw_addr); nm_device_update_permanent_hw_address(self, FALSE); if (pllink->name[0] && !nm_streq(priv->iface, pllink->name)) { @@ -6751,8 +6750,6 @@ device_link_changed(gpointer user_data) /* Update DHCP, etc, if needed */ if (ip_ifname_changed) nm_device_update_dynamic_ip_setup(self, "IP interface changed"); - else if (hw_addr_changed) - nm_device_update_dynamic_ip_setup(self, "hw-address changed"); was_up = priv->up; priv->up = NM_FLAGS_HAS(pllink->n_ifi_flags, IFF_UP); |