[Olsr-dev] olsr1 / crashes with recent OpenWrt

Ufo (spam-protected)
Thu Dec 31 20:44:19 CET 2015


Am 30.12.15 um 19:59 schrieb Bastian Bittorf:
> we observe a lot of crashes since we upgraded
> our routers. unsure what changed, but these are our findings:
> 
> it seems to happen during shutdown/restart:
> 

on our nodes with openwrt-trunk (via meshkit) it also happens, when
starting the device:



[   26.411681] IPv6: ADDRCONF(NETDEV_UP): wlan0-1: link is not ready
[   26.476315] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0-1: link becomes ready
[   26.525254] device wlan0-2 entered promiscuous mode
[   26.635702] IPv6: ADDRCONF(NETDEV_UP): wlan0-2: link is not ready
[   26.641962] br-mesh12: port 1(wlan0-2) entered forwarding state
[   26.648063] br-mesh12: port 1(wlan0-2) entered forwarding state
[   26.688371] IPv6: ADDRCONF(NETDEV_CHANGE): br-mesh12: link becomes ready
[   26.742588] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0-2: link becomes ready
[   26.755053] device wlan0-3 entered promiscuous mode
[   26.795678] IPv6: ADDRCONF(NETDEV_UP): wlan0-3: link is not ready
[   26.802044] br-mesh61: port 1(wlan0-3) entered forwarding state
[   26.808175] br-mesh61: port 1(wlan0-3) entered forwarding state
[   26.815755] IPv6: ADDRCONF(NETDEV_CHANGE): br-mesh61: link becomes ready
[   26.950468] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0-3: link becomes ready
[   27.439771] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   27.610707] wlan0: Created IBSS using preconfigured BSSID
02:40:ca:ff:ee:ee
[   27.617874] wlan0: Creating new IBSS network, BSSID 02:40:ca:ff:ee:ee
[   27.624926] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   28.324904]
[   28.324904] do_page_fault(): sending SIGSEGV to olsrd for invalid
write access to 00000000
[   28.333370] epc = 77730e54 in libc.so[7770a000+92000]
[   28.338533] ra  = 0040cd7d in olsrd[400000+3b000]
[   28.343354]
[   28.643363] br-mesh12: port 1(wlan0-2) entered forwarding state
[   28.803368] br-mesh61: port 1(wlan0-3) entered forwarding state
[   28.893252] batman_adv: bat12: Adding interface: w0v12
[   28.898598] batman_adv: bat12: Interface activated: w0v12
[   28.905923] 8021q: adding VLAN 0 to HW filter on device bat12
[   28.954914] batman_adv: bat61: Adding interface: w0v61
[   28.960222] batman_adv: bat61: Interface activated: w0v61
[   28.974586] device bat12 entered promiscuous mode
[   28.979575] br-mesh12: port 2(bat12) entered forwarding state
[   28.985514] br-mesh12: port 2(bat12) entered forwarding state
[   29.085101] 8021q: adding VLAN 0 to HW filter on device bat61
[   29.143501] device bat61 entered promiscuous mode
[   29.148379] br-mesh61: port 2(bat61) entered forwarding state
[   29.154307] br-mesh61: port 2(bat61) entered forwarding state
[   29.810987] batman_adv: bat12: Changing gw mode from: off to: client
[   29.836557] batman_adv: bat12: multicast_mode: Changing from: enabled
to: disabled
[   30.171076] batman_adv: bat61: Changing gw mode from: off to: client
[   30.274087] batman_adv: bat61: multicast_mode: Changing from: enabled
to: disabled
[   30.983359] br-mesh12: port 2(bat12) entered forwarding state
[   31.153361] br-mesh61: port 2(bat61) entered forwarding state
[   36.579395]
[   36.579395] do_page_fault(): sending SIGSEGV to olsrd for invalid
write access to 00000000
[   36.587880] epc = 77314e54 in libc.so[772ee000+92000]
[   36.593048] ra  = 0040cd7d in olsrd[400000+3b000]
[   36.598046]

...



Thu Dec 31 20:40:04 2015 daemon.err olsrd[2220]:  packet length error in
 packet received from 10.61.115.31!
Thu Dec 31 20:40:23 2015 daemon.err olsrd[2220]:  packet length error in
 packet received from 10.61.115.31!


basti wrote:

> Wed Dec 30 19:32:09 2015 daemon.info olsrd[13906]: Writing '1' (was 0) to /proc/sys/net/ipv4/conf/all/send_redirects
> Wed Dec 30 19:32:09 2015 daemon.info olsrd[13906]: Writing '1' (was 0) to /proc/sys/net/ipv4/conf/wlan1/send_redirects
> Wed Dec 30 19:32:09 2015 daemon.info olsrd[13906]: Writing '1' (was 0) to /proc/sys/net/ipv4/conf/wlan0/send_redirects
> Wed Dec 30 19:32:09 2015 daemon.info olsrd[13906]: Writing '1' (was 0) to /proc/sys/net/ipv4/conf/eth0.2/send_redirects
> Wed Dec 30 19:32:09 2015 daemon.info olsrd[13906]: Writing '1' (was 0) to /proc/sys/net/ipv4/conf/eth0.1/send_redirects
> Wed Dec 30 19:32:09 2015 daemon.info olsrd[13906]: olsr.org - 0.9.0.3-git_6265512-hash_b007c5ebb9bcf37ab629b09d81e2e7b9 stopped
> Wed Dec 30 19:32:09 2015 daemon.err olsrd[13906]: OLSR: sendto IPv4 Bad file descriptor
> Wed Dec 30 19:32:09 2015 daemon.err olsrd[13906]: OLSR: sendto IPv4 Bad file descriptor
> Wed Dec 30 19:32:09 2015 daemon.err olsrd[13906]: OLSR: sendto IPv4 Bad file descriptor
> Wed Dec 30 19:32:09 2015 daemon.err olsrd[13906]: OLSR: sendto IPv4 Bad file descriptor
> Wed Dec 30 19:32:09 2015 daemon.err olsrd[13906]: OLSR: sendto IPv4 Bad file descriptor
> Wed Dec 30 19:32:09 2015 daemon.err olsrd[13906]: OLSR: sendto IPv4 Bad file descriptor
> Wed Dec 30 19:32:09 2015 daemon.err olsrd[13906]: OLSR: sendto IPv4 Bad file descriptor
> Wed Dec 30 19:32:09 2015 daemon.err olsrd[13906]: OLSR: sendto IPv4 Bad file descriptor
> Wed Dec 30 19:32:09 2015 kern.info kernel: [ 1785.284790]
> Wed Dec 30 19:32:09 2015 kern.info kernel: [ 1785.284790] do_page_fault(): sending SIGSEGV to olsrd for invalid write access to 00000000
> Wed Dec 30 19:32:09 2015 kern.info kernel: [ 1785.293271] epc = 7769ce54 in libc.so[77676000+92000]
> Wed Dec 30 19:32:09 2015 kern.info kernel: [ 1785.298639] ra  = 004190bd in olsrd[400000+3b000]
> Wed Dec 30 19:32:09 2015 kern.info kernel: [ 1785.303502]
> 
> the coredump's backtrace is this:
> (spam-protected):~/openwrt$ ./scripts/remote-gdb r48016.ar71xx.olsrd.503.11.1451500700.core staging_dir/target-mips_34kc_musl-1.1.11/root-ar71xx/usr/sbin/olsrd
> [...]
> (gdb) bt full
> #0  0x777c0e54 in ?? ()
> No symbol table info available.
> #1  0x004190bd in olsr_destroy_parser () at src/parser.c:105
>         pe = <optimized out>
>         pe_next = 0x77798330
>         ppe = <optimized out>
>         ppe_next = <optimized out>
>         pae = <optimized out>
>         pae_next = <optimized out>
> #2  0x0001e460 in ?? ()
> No symbol table info available.
> Backtrace stopped: frame did not save the PC
> (gdb) 
> 
> but i cannot see the mistake:
> 
> olsr_destroy_parser(void) {
>   struct parse_function_entry *pe, *pe_next;
>   struct preprocessor_function_entry *ppe, *ppe_next;
>   struct packetparser_function_entry *pae, *pae_next;
> 
>   for (pe = parse_functions; pe; pe = pe_next) {
>     pe_next = pe->next;
>     free (pe);
>   }
>   for (ppe = preprocessor_functions; ppe; ppe = ppe_next) {
>     ppe_next = ppe->next;
>     free (ppe);
>   }
>   for (pae = packetparser_functions; pae; pae = pae_next) {
>     pae_next = pae->next;
>     free(pae);
>   }
> }
> 
> i uploaded the coredump/buildbin here:
> http://intercity-vpn.de/files/openwrt/r48016.ar71xx.olsrd.503.11.1451500700.core
> http://intercity-vpn.de/files/openwrt/r48016.ar71xx.olsrd.503.11.1451500700.bin
> 
> bye, bastian
> 


-- 
---
Freifunk Leipzig http://leipzig.freifunk.net



More information about the Olsr-dev mailing list