Connman crashes when loosing network
Hi All, I experience reproducible connman crashes with version v1.20, v1.21, v1.22, v1.23 and HEAD of git. Older version I did not try. The situation is as follow: I have a controller (AM3547 from TI, ARM Cortex-A8) attached to a Wifi extender by wire. The Wifi extender is connected to a Wifi access point which is connect to our network. If the connection are up and running everything works well. When I however turn off the Wifi access point connman crashes with a segmentation fault (see log below). I have seen more connman crashes when networks are coming and going but there were not so nicely reproducible as this one. For cross compiling I use Yocto-Poky (OpenEmbedded). If you need more information, e.g. Wireshark logs or other kind of information I am happy to provide this. Connman was started with: connmand -d -n --nobacktrace -r But also with dnsproxy connman crashes. When I restart connman in this situation it ends in a seg fault again. When the connection to the Wifi access point is restored connman starts without problems. Hope someone can help me because this is a serious problem for us. Best regards, Marcel 05/01/14 09:56:37 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_append_ipv4() 05/01/14 09:56:37 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_append_ipv4config() 05/01/14 09:56:37 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_append_ipv6config() 05/01/14 09:56:37 AM connmand[26030]: src/service.c:append_nameservers() servers[0] 192.168.4.13 available 1 05/01/14 09:56:37 AM connmand[26030]: src/service.c:append_nameservers() servers[1] 192.168.1.26 available 1 05/01/14 09:56:37 AM connmand[26030]: src/storage.c:storage_load() Loading /var/lib/connman/settings 05/01/14 09:56:45 AM connmand[26030]: src/rtnl.c:rtnl_message() buf 0xbea8ab18 len 576 05/01/14 09:56:45 AM connmand[26030]: src/rtnl.c:rtnl_message() NEWLINK len 576 type 16 flags 0x seq 0 pid 0 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_newlink() index 3 05/01/14 09:56:45 AM connmand[26030]: eth0 {RX} 38268 packets 4322051 bytes 05/01/14 09:56:45 AM connmand[26030]: eth0 {TX} 31213 packets 3869059 bytes 05/01/14 09:56:45 AM connmand[26030]: src/service.c:stats_update() service 0xad800 05/01/14 09:56:45 AM connmand[26030]: eth0 {update} flags 36867 UP 05/01/14 09:56:45 AM connmand[26030]: src/service.c:service_lower_down() eth0 lower down 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_disable() ipconfig 0xac3e0 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_unref_debug() 0xac3e0 ref 1 by src/ipconfig.c:1694:__connman_ipconfig_disable() 05/01/14 09:56:45 AM connmand[26030]: src/service.c:stats_stop() service 0xad800 05/01/14 09:56:45 AM connmand[26030]: src/service.c:service_save() service 0xad800 new 0 05/01/14 09:56:45 AM connmand[26030]: src/storage.c:storage_load() Loading /var/lib/connman/ethernet_5056631d05ad_cable/settings 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_save() ipconfig 0xac3e0 identifier ethernet_5056631d05ad_cable method dhcp 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_save() ipconfig 0xa9fd8 identifier ethernet_5056631d05ad_cable method off 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_lower_down() ipconfig ipv4 (nil) ipv6 0xa9fd8 05/01/14 09:56:45 AM connmand[26030]: src/inet.c:connman_inet_clear_ipv6_address() index 3 address (null) prefix_len 0 05/01/14 09:56:45 AM connmand[26030]: eth0 {newlink} index 3 address 50:56:63:1D:05:AD mtu 1500 05/01/14 09:56:45 AM connmand[26030]: eth0 {newlink} index 3 operstate 2 DOWN 05/01/14 09:56:45 AM connmand[26030]: src/detect.c:detect_newlink() type 1 index 3 05/01/14 09:56:45 AM connmand[26030]: plugins/ethernet.c:ethernet_newlink() index 3 flags 36867 change 0 05/01/14 09:56:45 AM connmand[26030]: plugins/ethernet.c:ethernet_newlink() carrier off 05/01/14 09:56:45 AM connmand[26030]: src/device.c:connman_device_remove_network() device 0xacf88 network 0xaaf10 05/01/14 09:56:45 AM connmand[26030]: src/device.c:free_network() network 0xaaf10 05/01/14 09:56:45 AM connmand[26030]: src/network.c:network_remove() network 0xaaf10 name Wired 05/01/14 09:56:45 AM connmand[26030]: src/network.c:set_disconnected() service 0xad800 ipv4 0xac3e0 ipv6 0xa9fd8 05/01/14 09:56:45 AM connmand[26030]: src/network.c:set_disconnected() method ipv4 4 ipv6 1 05/01/14 09:56:45 AM connmand[26030]: src/dhcp.c:__connman_dhcp_stop() network_table 0xa5528 network
Re: Connman crashes when loosing network
Could you please try with HEAD version and pastebin the logs? Saw a refcount issue in: 05/01/14 09:56:55 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_unref_debug() 0xa9fd8 ref -1 by src/ipconfig.c:1707:__connman_ipconfig_disable() But I don't know which version your are actually running. On Thu, May 1, 2014 at 4:05 AM, Marcel Mulder mmul...@victronenergy.comwrote: Hi All, I experience reproducible connman crashes with version v1.20, v1.21, v1.22, v1.23 and HEAD of git. Older version I did not try. The situation is as follow: I have a controller (AM3547 from TI, ARM Cortex-A8) attached to a Wifi extender by wire. The Wifi extender is connected to a Wifi access point which is connect to our network. If the connection are up and running everything works well. When I however turn off the Wifi access point connman crashes with a segmentation fault (see log below). I have seen more connman crashes when networks are coming and going but there were not so nicely reproducible as this one. For cross compiling I use Yocto-Poky (OpenEmbedded). If you need more information, e.g. Wireshark logs or other kind of information I am happy to provide this. Connman was started with: connmand -d -n --nobacktrace -r But also with dnsproxy connman crashes. When I restart connman in this situation it ends in a seg fault again. When the connection to the Wifi access point is restored connman starts without problems. Hope someone can help me because this is a serious problem for us. Best regards, Marcel 05/01/14 09:56:37 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_append_ipv4() 05/01/14 09:56:37 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_append_ipv4config() 05/01/14 09:56:37 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_append_ipv6config() 05/01/14 09:56:37 AM connmand[26030]: src/service.c:append_nameservers() servers[0] 192.168.4.13 available 1 05/01/14 09:56:37 AM connmand[26030]: src/service.c:append_nameservers() servers[1] 192.168.1.26 available 1 05/01/14 09:56:37 AM connmand[26030]: src/storage.c:storage_load() Loading /var/lib/connman/settings 05/01/14 09:56:45 AM connmand[26030]: src/rtnl.c:rtnl_message() buf 0xbea8ab18 len 576 05/01/14 09:56:45 AM connmand[26030]: src/rtnl.c:rtnl_message() NEWLINK len 576 type 16 flags 0x seq 0 pid 0 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_newlink() index 3 05/01/14 09:56:45 AM connmand[26030]: eth0 {RX} 38268 packets 4322051 bytes 05/01/14 09:56:45 AM connmand[26030]: eth0 {TX} 31213 packets 3869059 bytes 05/01/14 09:56:45 AM connmand[26030]: src/service.c:stats_update() service 0xad800 05/01/14 09:56:45 AM connmand[26030]: eth0 {update} flags 36867 UP 05/01/14 09:56:45 AM connmand[26030]: src/service.c:service_lower_down() eth0 lower down 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_disable() ipconfig 0xac3e0 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_unref_debug() 0xac3e0 ref 1 by src/ipconfig.c:1694:__connman_ipconfig_disable() 05/01/14 09:56:45 AM connmand[26030]: src/service.c:stats_stop() service 0xad800 05/01/14 09:56:45 AM connmand[26030]: src/service.c:service_save() service 0xad800 new 0 05/01/14 09:56:45 AM connmand[26030]: src/storage.c:storage_load() Loading /var/lib/connman/ethernet_5056631d05ad_cable/settings 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_save() ipconfig 0xac3e0 identifier ethernet_5056631d05ad_cable method dhcp 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_save() ipconfig 0xa9fd8 identifier ethernet_5056631d05ad_cable method off 05/01/14 09:56:45 AM connmand[26030]: src/ipconfig.c:__connman_ipconfig_lower_down() ipconfig ipv4 (nil) ipv6 0xa9fd8 05/01/14 09:56:45 AM connmand[26030]: src/inet.c:connman_inet_clear_ipv6_address() index 3 address (null) prefix_len 0 05/01/14 09:56:45 AM connmand[26030]: eth0 {newlink} index 3 address 50:56:63:1D:05:AD mtu 1500 05/01/14 09:56:45 AM connmand[26030]: eth0 {newlink} index 3 operstate 2 DOWN 05/01/14 09:56:45 AM connmand[26030]: src/detect.c:detect_newlink() type 1 index 3 05/01/14 09:56:45 AM connmand[26030]: plugins/ethernet.c:ethernet_newlink() index 3 flags 36867 change 0 05/01/14 09:56:45 AM connmand[26030]: plugins/ethernet.c:ethernet_newlink() carrier off 05/01/14 09:56:45 AM connmand[26030]: src/device.c:connman_device_remove_network() device 0xacf88 network 0xaaf10 05/01/14 09:56:45 AM connmand[26030]: src/device.c:free_network() network 0xaaf10
Re: Connman crashes when loosing network
On Thu, 2014-05-01 at 08:05 +, Marcel Mulder wrote: I experience reproducible connman crashes with version v1.20, v1.21, v1.22, v1.23 and HEAD of git. Older version I did not try. See if dd96d41ea182f0d1e0b55686adf793fa72e0e4d3 helps. At least it was an attempt to solve a very similar sounding problem. When debugging this, run 'CONNMAN_DHCP_DEBUG=1 connmand -n -d src/dhcp.c' so that all DHCP logs are available. Cheers, Patrik ___ connman mailing list connman@connman.net https://lists.connman.net/mailman/listinfo/connman