(Kernel?) Debugging tips for K26?

Discussion in 'Tomato Firmware' started by rhester72, Jun 24, 2010.

  1. rhester72

    rhester72 Network Guru Member

    tor is a royal PITA.

    So far, I've been unable to get tor to run for more than 48 hours on multiple revisions of Tomato K26 on my RT-N16 (though they all obviously share the same kernel).

    What I've tried:

    - The two latest stable releases of tor (compiled from source)
    - The two latest stable releases of OpenSSL (0.9.x and 1.0.x trees)
    - OpenSSL with and without threading (a thread on Google suggested crash issues in earlier releases of tor with threaded OpenSSL, OpenWRT library is also compiled without threading)
    - Running with full debug logging enabled in tor (which gave the impression it was crashing somewhere in the OpenSSL code)
    - Running the precompiled older release from OpenWRT (same crash, same nature, which rather rules out most of the above)
    - Configuring libevent not to use EPOLL (there were ruminations on Google that the kernel source had a specific issue with ARM-based compiles and EPOLL that was supposedly corrected)
    - Setting the coredump ulimit to unlimited and setting corepath to a very large USB-based storage array (and yet NO coredump was produced!)

    I am at a loss. It starts fine, it runs fine, and then suddenly crashes, every time (though the OpenWRT build actually hung once and couldn't be killed, had to reboot).

    I can't get a core (and honestly wouldn't know how to debug ARM assembly even if I could), I can't pinpoint the precise failure point, and I'm not making a whole lot of headway in determining whether it's crashing in the application code or one of the dependent libraries.

    Since the OpenWRT precompile (with its own set of dependent libraries forced via LD_LIBRARY_PATH and verified via ldd) behaves essentially identically to my own, yet is a different version, with different versions of the dependent libraries, and (presumably) doesn't crash on OpenWRT, this suggests to me that it's some sort of kernel defect, but I am beyond lost on how I might go about tracking it down.

    Any thoughts?

  2. ray123

    ray123 LI Guru Member

    Sorry, don't have much to suggest. Kernel debugging is always the hardest kind of debugging.

    FWIW, I'm not convinced that Teddy Bear's version of 2.6 is robust.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice