Hi I run connman with gdb and I tried to get the backtrace, it wasn't very useful because it crash in different place all time. It try to access to use the dhcp in the IPv4 for the Ethernet interface, but the structure is gone it make signal 11 (segmentation fault) or signal 10 (error the use the BUS) when it try to use the socket in IPv4 for the Ethernet. It's logical because it depend if the memory was reused or not in the moment of the access to this elements.
In conclusion, the crash is for using element was removed in the first change (step 4). Connman use the Ethernet like it was connected to IPv4 and IPv6, but the IPv4 was freed before. Thanks very much, Alejandro Abejon Alejandro Abejon Software Developer in Digisoft.tv On 14 August 2015 at 12:34, Patrik Flykt <[email protected]> wrote: > > Hi, > > On Tue, 2015-08-11 at 09:16 +0100, Alejandro Gonzalez wrote: > > Hi, > > > > I found a issue in the last version of the connmand in the repository > > (commit 4227576726725a2c5f0e8c271769fbf0765b5b54 Wed Jul 29 16:23:25 2015 > > +0300) , but I detected it from the 1.28 version. > > > > The devices is compiled for mipsel, it is compiled with the flag " > > --enable-pie". The OS is yocto. > > > > The configuration files has this option: > > [General] > > InputRequestTimeout=3600 > > BackgroundScanning=false > > DefaultAutoConnectTechnologies= > > *SingleConnectedTechnology=true* > > > > The connection wit Ethernet is configured wit the auto connect. The > problem > > came when i try to switch from the WiFi to the Ethernet. I observed form > > the trace this steps in the process: > > > > There is a issue with the *SingleConnectedTechnology= true* in connman. > The > > process in connman for switch between Ethernet and WiFi follow these > steps: > > > > 1. It is connected to one technology e.g Ethernet. > > 2. It connects to the other technology in this example WiFi. All > > parameters from the new network are configured. In this moment the > devices > > has two connection. > > 3. it has a two connection, so the function single_connected_tech is > > called and it keeps the WiFi network and disconnect the Ethernet > service: > > > > connmand[24386]: src/service.c:single_connected_tech() keeping > > 0x556afe20 > /net/connman/service/wifi_7cdd907e2a65_4469676957494649_managed_psk > > connmand[24386]: src/service.c:single_connected_tech() > > disconnecting 0x556addd0 > > /net/connman/service/ethernet_0016e84dcaab_cable > > > > > > 4. The Ethernet service is disconnected and removed his configuration. > > However there is a moment where Ethernet is disconnect for the IPv4 > and the > > IPv6 is ready. it declares itself ready. It happens always in the > > disconnect process when the network has IPv4 and IPv6. > > > > connmand[24386]: src/service.c:service_indicate_state() service > > 0x556addd0 old online - new disconnect/ready => ready > > > > 5. The devices has again two technology, so single_connected_tech is > > called again. However, the ethernet connection is kept now, because > it is > > the last network is connected > > > > connmand[24386]: src/service.c:single_connected_tech() keeping > > 0x556addd0 /net/connman/service/ethernet_0016e84dcaab_cable > > connmand[24386]: src/service.c:single_connected_tech() > > disconnecting 0x556afe20 > > /net/connman/service/wifi_7cdd907e2a65_4469676957494649_managed_psk > > > > 6. Connman crashes because it try to use the Ethernet network but it > was > > removed partially. > > I enabled SingleConnectedTechnology and switched likewise from Ethernet > to WiFi, but could not trigger a crash with upstream. Did ConnMan print > a backtrace, and if so what does it look like? > > Cheers, > > Patrik > > _______________________________________________ > connman mailing list > [email protected] > https://lists.connman.net/mailman/listinfo/connman > _______________________________________________ connman mailing list [email protected] https://lists.connman.net/mailman/listinfo/connman
