[Olsr-dev] olsr1 / crashes with recent OpenWrt

Bastian Bittorf (spam-protected)
Wed Dec 30 19:59:22 CET 2015


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:

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



More information about the Olsr-dev mailing list