NetworkManager crashes in g_type_check_instance_cast () when connecting to 3G

Bug #411668 reported by Manoj Iyer
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
network-manager (Ubuntu)
Fix Released
High
Alexander Sack
Nominated for Karmic by Manoj Iyer

Bug Description

Binary package hint: network-manager

When connecting to 3G network, the network manager crashes in g_type_check_instance_cast ()
When debugged, GDB reports the following backtrace.

Loaded symbols for /usr/lib/libgvfscommon.so.0
(no debugging symbols found)
0x00007f1f38b281b3 in poll () from /lib/libc.so.6
(gdb) c
Continuing.

Program received signal SIGSEGV, Segmentation fault.
0x00007f1f390b8874 in g_type_check_instance_cast ()
   from /usr/lib/libgobject-2.0.so.0
(gdb) where
#0 0x00007f1f390b8874 in g_type_check_instance_cast ()
   from /usr/lib/libgobject-2.0.so.0
#1 0x000000000045bd54 in ?? ()
#2 0x00007f1f38df0c13 in g_hash_table_foreach ()
   from /usr/lib/libglib-2.0.so.0
#3 0x000000000045da94 in nm_sysconfig_settings_get_connection_by_path ()
#4 0x000000000043ddc9 in ?? ()
#5 0x00007f1f38dffa8e in g_main_context_dispatch ()
   from /usr/lib/libglib-2.0.so.0
#6 0x00007f1f38e03458 in ?? () from /usr/lib/libglib-2.0.so.0
#7 0x00007f1f38e038b5 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#8 0x0000000000434ef8 in main ()
(gdb)

ProblemType: Bug
Architecture: amd64
Date: Mon Aug 10 16:24:45 2009
DistroRelease: Ubuntu 9.10
IfupdownConfig:
 auto lo
 iface lo inet loopback
Package: network-manager 0.8~a~git.20090804t185522.4bab334-0ubuntu1
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-5.24-generic
SourcePackage: network-manager
Uname: Linux 2.6.31-5-generic x86_64
WpaSupplicantLog:

Revision history for this message
Manoj Iyer (manjo) wrote :
Manoj Iyer (manjo)
summary: - NetoworkManager crashes in g_type_check_instance_cast () when
- connecting to 3G
+ NetworkManager crashes in g_type_check_instance_cast () when connecting
+ to 3G
Changed in network-manager (Ubuntu):
importance: Undecided → High
Revision history for this message
Manoj Iyer (manjo) wrote :

I removed everything under /etc/NetworkManager/system-connections and restarted NetworkManager, and configured my ATT 3G under MediaNet (as listed on my account on ATT website). This time the network manger does not crash, but it never makes any connection. I get the following messages NetworkManager & pppd.

Aug 12 09:41:19 little pppd[4784]: pppd 2.4.5 started by root, uid 0
Aug 12 09:41:19 little pppd[4784]: Using interface ppp0
Aug 12 09:41:19 little pppd[4784]: Connect: ppp0 <--> /dev/ttyUSB0
Aug 12 09:41:19 little NetworkManager: SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/ppp0, iface: ppp0)
Aug 12 09:41:19 little NetworkManager: <info> (ttyUSB0): device state change: 5 -> 6 (reason 0)
Aug 12 09:41:19 little pppd[4784]: CHAP authentication succeeded
Aug 12 09:41:19 little pppd[4784]: CHAP authentication succeeded
Aug 12 09:41:19 little NetworkManager: <info> (ttyUSB0): device state change: 6 -> 7 (reason 0)
Aug 12 09:41:23 little pppd[4784]: Could not determine remote IP address: defaulting to 10.64.64.64
Aug 12 09:41:23 little pppd[4784]: Cannot determine ethernet address for proxy ARP
Aug 12 09:41:23 little pppd[4784]: local IP address 10.143.82.129
Aug 12 09:41:23 little pppd[4784]: remote IP address 10.64.64.64
Aug 12 09:41:23 little pppd[4784]: primary DNS address 172.16.7.167
Aug 12 09:41:23 little pppd[4784]: secondary DNS address 172.16.7.167
Aug 12 09:41:23 little NetworkManager: <info> PPP manager(IP Config Get) reply received.
Aug 12 09:41:23 little NetworkManager: nm_ip4_config_add_nameserver: assertion `nameserver != s' failed
Aug 12 09:41:23 little NetworkManager: <info> Activation (ttyUSB0) Stage 4 of 5 (IP4 Configure Get) scheduled...
Aug 12 09:41:23 little NetworkManager: <info> Activation (ttyUSB0) Stage 4 of 5 (IP4 Configure Get) started...
Aug 12 09:41:23 little NetworkManager: <info> Activation (ttyUSB0) Stage 4 of 5 (IP4 Configure Get) complete.
Aug 12 09:43:47 little NetworkManager: <info> (ttyUSB0): device state change: 7 -> 3 (reason 39)
Aug 12 09:43:47 little NetworkManager: <info> (ttyUSB0): deactivating device (reason: 39).
Aug 12 09:43:47 little pppd[4784]: Terminating on signal 15

Revision history for this message
Manoj Iyer (manjo) wrote :

Attaching the config that caused the crash (removed password for privacy concerns)

Revision history for this message
Manoj Iyer (manjo) wrote :

Full backtrace

Revision history for this message
Manoj Iyer (manjo) wrote :

Posting full back trace after installing libnm-util1-dbgsym

Revision history for this message
Manoj Iyer (manjo) wrote :

Attaching valgrind info

Revision history for this message
Manoj Iyer (manjo) wrote :

Adding valgrind info, running as root

Revision history for this message
Alexander Sack (asac) wrote :

proposed patch:

diff --git a/src/system-settings/nm-sysconfig-settings.c b/src/system-settings/nm-sysconfig-settings.c
index 99f71c1..99963d5 100644
--- a/src/system-settings/nm-sysconfig-settings.c
+++ b/src/system-settings/nm-sysconfig-settings.c
@@ -172,7 +172,7 @@ static void
 find_by_path (gpointer key, gpointer data, gpointer user_data)
 {
  FindConnectionInfo *info = user_data;
- NMSysconfigConnection *exported = NM_SYSCONFIG_CONNECTION (data);
+ NMSysconfigConnection *exported = NM_SYSCONFIG_CONNECTION (key);
  const char *path;

  if (!info->found) {

Changed in network-manager (Ubuntu):
assignee: nobody → Alexander Sack (asac)
status: New → Triaged
Revision history for this message
Manoj Iyer (manjo) wrote :

Built the nm and libnm packages with the proposed patch, and tested again, this time it does not crash, but the nm is unable to establish a connection. Icon spins, but that is a different problem. I can verify that the proposed patch fixes the NM crash.

Revision history for this message
Alexander Sack (asac) wrote :

fixed in commit 3516e826599e34ad462ceb992d1dd8ec0856ca57 on master

Changed in network-manager (Ubuntu):
status: Triaged → Fix Committed
Revision history for this message
Alexander Sack (asac) wrote :

actually its 2e849a0cb89366dffb77a36fc88cbdb0e014b412

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package network-manager - 0.8~a~git.20090911t130220.4c77fa0-0ubuntu1

---------------
network-manager (0.8~a~git.20090911t130220.4c77fa0-0ubuntu1) karmic; urgency=low

  * upstream snapshot 2009-09-11 13:02:20 (GMT)
    + 4c77fa08623f41dd710c545ec859dd7e942a3f2c
    + fix LP: #411668 - NetworkManager crashes in g_type_check_instance_cast ()
      when connecting to 3G
    + fix LP: #366772 - Network manager does not show EVDO, device detected by hal
    + fix LP: #424092 - ifupdown connection device locking regressions caused by
      system-settings rework
    + fix LP: #424603 - Not closing modems when disconnected

  [ Tony Espy <email address hidden> ]
  * fix build error due to upstream re-factoring
    - update debian/patches/lp291564_ifupdown_unmanage_mapping_and_iface.patch
  * fix install problem due to new PolicyKit changes
    - update debian/network-manager.install
  * fix install problem due to libnm-glib naming changes
    - update debian/libnm-glib-dev.install
    - update debian/libnm-glib0.install
  * handle upstream soname version bump for libnm-glib
    - update debian/control
    - rename debian/libnm-glib0.install => debian/libnm-glib2.install
    - rename debian/libnm-glib0.symbols => debian/libnm-glib2.symbols
    - update debian/libnm-glib2.symbols
  * add new olpc_mesg symbols to libnm-util1.symbols
    - update debian/libnm-utils1.symbols
  * fix lintian errors: update Standards-Version to 3.8.3, add missing
    ${misc:Depends}, and replace deprecated ${Source-Version} variables
    with ${binary:Version}
    - update debian/control

  [ Alexander Sack <email address hidden> ]
  * drop -0ubuntu1 suffix from ip6 symbols added in previous upload
    - update debian/libnm-glib0.symbols
  * remove hal from build-depends and depends (LP: #416988)
    - update debian/control
  * adjust patches to new upstream codebase
    - update debian/patches/lp291564_ifupdown_unmanage_mapping_and_iface.patch
    - update debian/patches/lp291902_IFUPDOWN_dont_export_connection_in_unmanaged_mode.patch
  * build depend on libpolkit-gobject-1-dev instead of libpolkit-dbus-dev
    - update debian/control
  * make GET_SOURCE not go mad for git versions that use a different abbrev-id syntax
    - update debian/rules
  * drop patches applied upstream
    - delete debian/patches/lp291564_ifupdown_unmanage_mapping_and_iface.patch
    - delete debian/patches/lp291902_IFUPDOWN_dont_export_connection_in_unmanaged_mode.patch
    - update debian/patches/series

  [ Mathieu Trudel <email address hidden> ]
  * adjust patches to new upstream codebase
    - update debian/patches/lp291564_ifupdown_unmanage_mapping_and_iface.patch
  * add rule to retrieve current snapshot information
    - update debian/rules
  * fix missing character in GET_SOURCE code
    - update debian/rules
  * use current snapshot hash from changelog instead of latest in get-snapshot-info
    - update debian/rules
  * update GET_SOURCE code: exit on any error
    - update debian/rules

 -- Alexander Sack <email address hidden> Mon, 14 Sep 2009 11:29:38 +0200

Changed in network-manager (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.