GNOME Bugzilla – Bug 774829
nm-applet crashes when NetworkManager is restarted
Last modified: 2020-11-12 14:27:57 UTC
systemctl restart NetworkManager.service occasionally cause nm-applet to crash. This occurs often when my laptop resumes because I have installed a script that upon resume, restart the NetworkManager after a 3 seconds pause. This script has been added as a workaround because too often, upon resume, wifi would not work anymore (https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1585863). Downstream bug report: https://bugs.launchpad.net/ubuntu/+source/network-manager-applet/+bug/1404324 VERSION IN USE ══════════════════════════════════════════════════════════════════════════════ Ubuntu 16.04 LTS Xenial Xerus # dpkg -l | fgrep -i network-manager ii network-manager 1.2.2-0ubuntu0.16.04.3 amd64 network management framework (daemon and userspace tools) ii network-manager-gnome 1.2.0-0ubuntu0.16.04.4 amd64 network management framework (GNOME frontend) ii network-manager-openvpn 1.1.93-1ubuntu1 amd64 network management framework (OpenVPN plugin core) ii network-manager-openvpn-gnome 1.1.93-1ubuntu1 amd64 network management framework (OpenVPN plugin GNOME GUI) ii network-manager-pptp 1.1.93-1ubuntu1 amd64 network management framework (PPTP plugin core) ii network-manager-pptp-gnome 1.1.93-1ubuntu1 amd64 network management framework (PPTP plugin GNOME GUI) CRASH INFO ══════════════════════════════════════════════════════════════════════════════ SegvAnalysis: Segfault happened at: 0x7fd63e834a9a <g_slice_alloc+426>: mov (%rax),%rdx PC (0x7fd63e834a9a) ok source "(%rax)" (0x00010000) not located in a known VMA region (needed readable region)! destination "%rdx" ok SegvReason: reading unknown VMA SourcePackage: network-manager-applet Stacktrace: #0 0x00007fd63e834a9a in g_slice_alloc () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #1 0x00007fd63e834fce in g_slice_alloc0 () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #2 0x00007fd63eaf2ed7 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #3 0x00007fd63eaf2fa4 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #4 0x00007fd63eb12317 in g_type_create_instance () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #5 0x00007fd63eaf431b in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #6 0x00007fd63eaf5c01 in g_object_newv () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #7 0x00007fd63eaf6534 in g_object_new () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #8 0x00007fd640428271 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 No symbol table info available. #9 0x00007fd64056c909 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 No symbol table info available. #10 0x00007fd63eb12359 in g_type_create_instance () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #11 0x00007fd63eaf431b in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #12 0x00007fd63eaf5c01 in g_object_newv () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #13 0x00007fd63eaf6534 in g_object_new () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #14 0x00007fd64056d155 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 No symbol table info available. #15 0x00007fd640617319 in gtk_widget_get_style_context () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 No symbol table info available. #16 0x00007fd6404e23d6 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 No symbol table info available. #17 0x00007fd63eb12317 in g_type_create_instance () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #18 0x00007fd63eaf431b in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #19 0x00007fd63eaf61b5 in g_object_new_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #20 0x00007fd63eaf6521 in g_object_new () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 No symbol table info available. #21 0x0000000000412cf1 in ?? () No symbol table info available. #22 0x0000000000416bf2 in ?? () No symbol table info available. #23 0x00007fd63e81805a in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #24 0x00007fd63e818400 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #25 0x00007fd63e8184ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 No symbol table info available. #26 0x00007fd63eddfcdd in g_application_run () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 No symbol table info available. #27 0x0000000000411dff in main () No symbol table info available.
the stack trace contains no mention of anything related to nm-applet or libnm. Which doesn't mean that the bug is outside nm-applet/libnm, but it's pretty hard to figure out the reason for the crash. Also, seems it doesn't have all debugging symbols available. Well, that g_slice_alloc() crashes, indicates some memory corruption... Is this reproducible with the latest nm-applet form upstream? (I was unable to do so).
I have no clue on how to compile/install the upstream nm-applet on Ubuntu 16.04 LTS. Do you have an easy recipe? Or better, is the latest nm-applet available on a PPA? Please note that I do not have a test machine; I do not want to screw up my laptop. I work on it and thus I do not want to install software that would break it and would be difficult to revert to a previous working state.
I don't know about Ubuntu. just for interest, it could be quite simple. I understand, it's a bit involved, so don't bother unless you really want to. Thanks. sudo apt-get build-dep network-manager-applet rm -rf /tmp/nma mkdir /tmp/nma cd /tmp/nma git clone https://git.gnome.org/browse/network-manager-applet ./src cd src ./autogen.sh --prefix=/tmp/nma/install make make install /tmp/nma/install/bin/nm-applet
Tried to compile it under Ubuntu 16.04 LTS Xenial Xerus, following Thomas Haller's instructions, but got the following errors: checking for LIBNM_GLIB... no configure: error: Package requirements (gio-2.0 >= 2.32 NetworkManager >= 1.3 libnm-glib >= 1.3 libnm-util >= 1.3 libnm-glib-vpn >= 1.3 gmodule-export-2.0) were not met: I guess I will not be able to test the latest. Is there anything else I can do to provide some clues? In the repository, I could not find a network-manager-gnome with debugging symbols.
(In reply to Hans Deragon from comment #0) > systemctl restart NetworkManager.service occasionally cause nm-applet to > crash. Hi, can you please try to recompile the Ubuntu package with the following patch: https://git.gnome.org/browse/network-manager-applet/commit/?id=93d5c134bcb7e0051eabe2395033be99ecddd4c2 and see if it makes any difference?
(In reply to Beniamino Galvani from comment #5) > can you please try to recompile the Ubuntu package with the following patch: As mentioned in comment #4, I cannot compile the latest applet on 16.04. I am not familiar with the world of C compilation. If you have a recipe that does not brake my system, I would gladly follow it.
(In reply to Hans Deragon from comment #6) > (In reply to Beniamino Galvani from comment #5) > > can you please try to recompile the Ubuntu package with the following patch: > > As mentioned in comment #4, I cannot compile the latest applet on 16.04. I > am not familiar with the world of C compilation. If you have a recipe that > does not brake my system, I would gladly follow it. Maybe, it's simpler if you install the package with debug symbols using the following procedure: https://wiki.ubuntu.com/Debug%20Symbol%20Packages and then: sudo apt-get install network-manager-gnome-dbgsym valgrind killall nm-applet valgrind nm-applet After that, reproduce the issue and post the valgrind output. Thanks!
I am also experiencing this issue. However, Ubuntu 16.04 does not appear to have the nm-applet (network-manager-applet) as a separate package. This function appears to have been incorporated into <indicator-applet-complete>. However, I am able to re-spawn the nm-applet using the following command from the terminal: $ killall nm-applet; nohup nm-applet & This would suggest that indicator-applet-complete is using the shared library for network-manager-applet?
Four years later, is this still a problem in recent versions (preferably 3.38, or maybe 3.36)?
For me (the reporter of this bug) the bug is now irrelevant in my case. I use Ubuntu 20.04 LTS and Gnome. nm-applet is not used anymore. The bug might still occur, it is just that in my case, I cannot experience it anymore.
bugzilla.gnome.org is being shut down in favor of a GitLab instance. We are closing all old bug reports and feature requests in GNOME Bugzilla which have not seen updates for a long time. If you still use NetworkManager and if you still see this bug / want this feature in a recent and supported version of NetworkManager, then please feel free to report it at https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/issues/ Thank you for creating this report and we are sorry it could not be implemented (workforce and time is unfortunately limited).