The test plan looks good - thanks! On reviewing the patch itself, it looks quite complex. We took a look upstream to see if there were any further fixes on the commit being cherry-picked, and found at least one. See https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commits/nm-1-10/src/devices/nm- device.c and commit d017022. This doesn't appear to be incorporated into the fix in Bionic being proposed here.
Please could you fully analyze what has occurred upstream to ensure that this patch doesn't have any known issues that have since been fixed upstream? If these are false positives, I'd appreciate an explanation. Thanks! ** Changed in: network-manager (Ubuntu Bionic) Status: In Progress => Incomplete -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to network-manager in Ubuntu. https://bugs.launchpad.net/bugs/1969901 Title: network-manager fails to renew ipv6 address Status in network-manager package in Ubuntu: Fix Released Status in network-manager source package in Bionic: Incomplete Bug description: [Impact] * This affects Ubuntu 18.04 where Network Manager version 1.10.6 is used. * Network manager might kill dhclient(6) and fail to start it again causing the IPv6 address to be lost on a network that uses mixed IPv4/IPV6. The network status will still be seen as online in gnome since ipv4 is still active. The user then have to manually remove the dhcpv6 lease files and restart ipv6 connection/restart network manager to regain IPv6 connectivity. * This is a cherry-pick from Network manager 1.10.8 (Ubuntu's version is based on 1.10.6): https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/commit/7fbbe7ebee99785e38d39c37e515a64a28edef0f * Upstream bug: https://bugzilla.gnome.org/show_bug.cgi?id=783391 [Test Plan] The test requires three computers * one computer runing isc dhcpd server (with network configured static) * one computer running patched network manager * one computer running vanilla ubuntu The idea is to execute on an isolated network and trigger the error by changing ip range handed out by the dhcp-server to force a nack response back to the clients. Expected result * patched network keeps dhclient6 alive * vanilla network manager will fail to keep dhclient6 alive in network manager logs dhcp6 will expire and not be restarted ON THE SERVER # Disable app-armor, as it has rules restricting dhcpd aa-teardown # install isc dhcpserver isc-dhcp-server # configure network static sudo nmcli connection modify "${CONNECTION_NAME}" \ ipv4.method "manual" \ ipv4.addresses "192.168.1.1/24" \ ipv4.gateway "192.168.1.254" \ ipv4.dns "192.168.1.1" \ ipv6.method "manual" \ ipv6.addresses "2001:db8:0:1::1/64" \ ipv6.gateway "2001:db8:0:1::ffbb" \ ipv6.dns "2001:db8:0:1::1/64" mkdir -p tmp touch tmp/dhcpd4_a.leases touch tmp/dhcpd4_b.leases touch tmp/dhcpd6_a.leases touch tmp/dhcpd6_b.leases Then it is time to execute dhcpd -f - run in foreground -d - print errors to stderr instead of syslog # Start in separate terminals dhcpd -f -d -4 -cf dhcp_v4_a.conf -lf tmp/dhcpd4_a.leases enp0s31f6 dhcpd -f -d -6 -cf dhcp_v6_a.conf -lf tmp/dhcpd6_a.leases enp0s31f6 Press ctrl-C to kill servers, then restart with the b configurations dhcpd -f -d -4 -cf dhcp_v4_b.conf -lf tmp/dhcpd4_b.leases enp0s31f6 dhcpd -f -d -6 -cf dhcp_v6_b.conf -lf tmp/dhcpd6_b.leases enp0s31f6 Then leases to expire (check for clients that kills dhclient) Press ctrl-C to kill servers, then restart with the a configurations ON THE CLIENTS Setup: Configure ipv6 network in settings to use dhcp (using the gui) Test: check that dhcp clients are still running: ps aux|grep dhclient Expected in output one client for dhcpv4 one client for dhcpv6 Also check network manager status : journalctl -u NetworkManager.service journalctl -u NetworkManager.service|grep dhcp6 # to only view dhclient6 journalctl -u NetworkManager.service|grep dhcp4 # to only view dhclient4 if dhclient is not running: stop network in gui remove lease files (/var/lib/NetworkManager/dhclient*.lease). Only remove the lease for the client not running. start network in gui if dhclients are running: wait additional ten minutes, repeat from beginning of test [Where problems could occur] * The change is in the dchp lease expiration handling so verify that there is no regression in dhcp renewals on different type of configuration include IPv6 [Other Info] * We have tested this patch on a couple of clients where we have seen this this problem. If this patch is feasible to include in Ubuntu 18.04 we could request more users to test. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1969901/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp