60 lines
2.5 KiB
Diff
60 lines
2.5 KiB
Diff
From e6e54f331776f7832e2a359658e8740bffab60ad Mon Sep 17 00:00:00 2001
|
|
From: Beniamino Galvani <bgalvani@redhat.com>
|
|
Date: Tue, 27 Sep 2022 15:58:10 +0200
|
|
Subject: [PATCH] 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
|
|
(cherry picked from commit 98197386078a471ed993d009e34e08a6aa7c22d9)
|
|
(cherry picked from commit f9db4f4604e26ff0f769b56b9bef8f7d991d23d9)
|
|
---
|
|
src/core/devices/nm-device.c | 9 +++------
|
|
1 file changed, 3 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c
|
|
index d63b902b16..7585acf4d3 100644
|
|
--- a/src/core/devices/nm-device.c
|
|
+++ b/src/core/devices/nm-device.c
|
|
@@ -6646,7 +6646,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;
|
|
@@ -6693,9 +6692,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)) {
|
|
@@ -6746,8 +6745,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);
|
|
--
|
|
2.37.3
|
|
|