[Pkg-utopia-maintainers] Bug#758533: Bug#758533: network-manager: wifi connected, internet connection does not work

Gilles Filippini pini at debian.org
Wed Dec 3 20:57:46 UTC 2014


Control: tag -1 + patch

Hi,

On Sun, 30 Nov 2014 23:43:44 +0100 Gilles Filippini <pini at debian.org> wrote:
> Control: tag -1 + fixed-upstream
> 
> Hi,
> 
> On Fri, 22 Aug 2014 01:38:26 +0200 Michael Biebl <biebl at debian.org> wrote:
> > Am 21.08.2014 20:26, schrieb Russ Allbery:
> > > Aug 21 10:33:19 wanderer NetworkManager[642]: <info> dhclient started with pid 17691
> > > Aug 21 10:33:19 wanderer NetworkManager[642]: <info> Activation (wlan0) Stage 3 of 5 (IP Configure Start) complete.
> > > Aug 21 10:33:19 wanderer dhclient: Internet Systems Consortium DHCP Client 4.3.1
> > > Aug 21 10:33:19 wanderer NetworkManager[642]: <info> (wlan0): DHCPv4 client pid 17691 exited with status -1
> > > Aug 21 10:33:19 wanderer NetworkManager[642]: <warn> DHCP client died abnormally
> > > 
> > > Downgrading network-manager to 0.9.10.0-1 fixes the problem.  It looks
> > > like something went wrong with the NMU.  Copying Micah.
> > 
> > 
> > Russ,
> > we just discussed this issue. It's most likely caused by a systemd
> > update where we restart journald in postinst.
> > That somehow seems to break the stdout->jounal forwarding, e.g. from NM
> > to its dhclient child process
> > If you restart NetworkManager.service, this will reset the state and fix
> > the issue.
> > By downgrading to -1, you triggered such a restart of NetworkManager, so
> > the downgrade is a red herring.
> > 
> > To reproduce the problem, you can simply run
> > systemctl restart systemd-journald.service
> > and then try to re-connect a NM connection and you'll experience the
> > same issue even with -1.
> 
> I've just been hit by this bug. The RedHat BTS says it is fixed upstream
> since september:
> https://bugzilla.redhat.com/show_bug.cgi?id=1136836#c3

I gave it a try, and it appears that backporting upstream's commit
b276696 is enough to fix this bug. Please find attached a patch proposal.

Thanks,

_g.
-------------- next part --------------
diff -Nru network-manager-0.9.10.0/debian/changelog network-manager-0.9.10.0/debian/changelog
--- network-manager-0.9.10.0/debian/changelog	2014-09-30 06:12:35.000000000 +0200
+++ network-manager-0.9.10.0/debian/changelog	2014-12-03 21:45:40.000000000 +0100
@@ -1,3 +1,11 @@
+network-manager (0.9.10.0-3.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * New patch from upstream to fix dhclient breakage when journald is
+    restarted (closes: #758533).
+
+ -- Gilles Filippini <pini at debian.org>  Wed, 03 Dec 2014 21:45:39 +0100
+
 network-manager (0.9.10.0-3) unstable; urgency=medium
 
   [ Arto Jantunen ]
diff -Nru network-manager-0.9.10.0/debian/patches/0012-Fix-dhcp-breakage-when-restarting-journald.patch network-manager-0.9.10.0/debian/patches/0012-Fix-dhcp-breakage-when-restarting-journald.patch
--- network-manager-0.9.10.0/debian/patches/0012-Fix-dhcp-breakage-when-restarting-journald.patch	1970-01-01 01:00:00.000000000 +0100
+++ network-manager-0.9.10.0/debian/patches/0012-Fix-dhcp-breakage-when-restarting-journald.patch	2014-12-03 21:44:59.000000000 +0100
@@ -0,0 +1,53 @@
+Description: Fix dhcp breakage when restarting journald
+ This patch is taken from upstream commit b276696 which is said to fix
+ the breakage, according to the RedHat BTS:
+ <https://bugzilla.redhat.com/show_bug.cgi?id=1136836#c3>.
+ Commit e47235b isn't required for the fix.
+ Successfully tested with:
+ * restart journald
+ * request a new network connection from NM.
+Bug-Debian: https://bugs.debian.org/758533
+Index: network-manager-0.9.10.0/src/dhcp-manager/nm-dhcp-dhclient.c
+===================================================================
+--- network-manager-0.9.10.0.orig/src/dhcp-manager/nm-dhcp-dhclient.c
++++ network-manager-0.9.10.0/src/dhcp-manager/nm-dhcp-dhclient.c
+@@ -413,6 +413,11 @@ dhclient_start (NMDHCPClient *client,
+ 
+ 	g_ptr_array_add (argv, (gpointer) "-d");
+ 
++	/* Be quiet. dhclient logs to syslog anyway. And we duplicate the syslog
++	 * to stderr in case of NM running with --debug.
++	 */
++	g_ptr_array_add (argv, (gpointer) "-q");
++
+ 	if (release)
+ 		g_ptr_array_add (argv, (gpointer) "-r");
+ 
+@@ -456,8 +461,9 @@ dhclient_start (NMDHCPClient *client,
+ 	nm_log_dbg (log_domain, "running: %s", cmd_str);
+ 	g_free (cmd_str);
+ 
+-	if (!g_spawn_async (NULL, (char **) argv->pdata, NULL, G_SPAWN_DO_NOT_REAP_CHILD,
+-	                    &dhclient_child_setup, NULL, &pid, &error)) {
++	if (!g_spawn_async (NULL, (char **) argv->pdata, NULL,
++	                   G_SPAWN_DO_NOT_REAP_CHILD | G_SPAWN_STDOUT_TO_DEV_NULL | G_SPAWN_STDERR_TO_DEV_NULL,
++	                   &dhclient_child_setup, NULL, &pid, &error)) {
+ 		nm_log_warn (log_domain, "dhclient failed to start: '%s'", error->message);
+ 		g_error_free (error);
+ 		pid = -1;
+Index: network-manager-0.9.10.0/src/dhcp-manager/nm-dhcp-dhcpcd.c
+===================================================================
+--- network-manager-0.9.10.0.orig/src/dhcp-manager/nm-dhcp-dhcpcd.c
++++ network-manager-0.9.10.0/src/dhcp-manager/nm-dhcp-dhcpcd.c
+@@ -152,8 +152,9 @@ ip4_start (NMDHCPClient *client,
+ 	nm_log_dbg (LOGD_DHCP4, "running: %s", cmd_str);
+ 	g_free (cmd_str);
+ 
+-	if (!g_spawn_async (NULL, (char **) argv->pdata, NULL, G_SPAWN_DO_NOT_REAP_CHILD,
+-	                    &dhcpcd_child_setup, NULL, &pid, &error)) {
++	if (!g_spawn_async (NULL, (char **) argv->pdata, NULL,
++	                   G_SPAWN_DO_NOT_REAP_CHILD | G_SPAWN_STDOUT_TO_DEV_NULL | G_SPAWN_STDERR_TO_DEV_NULL,
++	                   &dhcpcd_child_setup, NULL, &pid, &error)) {
+ 		nm_log_warn (LOGD_DHCP4, "dhcpcd failed to start.  error: '%s'", error->message);
+ 		g_error_free (error);
+ 		pid = -1;
diff -Nru network-manager-0.9.10.0/debian/patches/series network-manager-0.9.10.0/debian/patches/series
--- network-manager-0.9.10.0/debian/patches/series	2014-09-30 06:12:35.000000000 +0200
+++ network-manager-0.9.10.0/debian/patches/series	2014-12-03 21:09:13.000000000 +0100
@@ -9,3 +9,4 @@
 0009-Support-building-against-libsystemd-library.patch
 0010-tui-fix-requesting-and-displaying-secrets.patch
 0011-tui-fix-updating-of-NmtPasswordFields-passwords-bgo-.patch
+0012-Fix-dhcp-breakage-when-restarting-journald.patch
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-utopia-maintainers/attachments/20141203/e132f857/attachment-0001.sig>


More information about the Pkg-utopia-maintainers mailing list