[tor-bugs] #12889 [general]: Simulate global circuit scheduling from #9262

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Nov 13 14:55:50 UTC 2014


#12889: Simulate global circuit scheduling from #9262
----------------------------+------------------------
     Reporter:  robgjansen  |      Owner:  robgjansen
         Type:  task        |     Status:  new
     Priority:  normal      |  Milestone:
    Component:  general     |    Version:
   Resolution:              |   Keywords:  Shadow
Actual Points:              |  Parent ID:  #12541
       Points:              |
----------------------------+------------------------

Comment (by robgjansen):

 To be more specific about the bug, the Tor error message is this:

 {{{
 [thread-9] 00:01:15:000000000 [scallion-error]
 [relayexitguard11-106.187.52.188] [scalliontor_logmsg_cb] Error 1
 unlocking a mutex.
 }}}

 The backtrace is here:

 {{{
 **BEGIN BACKTRACE**
 Obtained 30 stack frames:
         /home/rob/.shadow/bin/shadow() [0x43c3fc]
         /home/rob/.shadow/bin/shadow(utility_handleError+0x34) [0x43be74]
         /home/rob/.shadow/bin/shadow(logging_handleLog+0x1df) [0x41263f]
         /lib64/libglib-2.0.so.0(g_logv+0x209) [0x3596450429]
         /home/rob/.shadow/bin/shadow(logging_logv+0x41c) [0x412a6c]
         /home/rob/.shadow/bin/shadow() [0x426ada]
         /tmp/4XOYOX-libshadow-plugin-tor.so(+0x46301) [0x7ffe79b22301]
         /tmp/4XOYOX-libshadow-plugin-tor.so(+0x1a60f3) [0x7ffe79c820f3]
         /tmp/4XOYOX-libshadow-plugin-tor.so(log_fn_+0x17d)
 [0x7ffe79c804ad]
         /tmp/4XOYOX-libshadow-plugin-tor.so(tor_mutex_release+0xab)
 [0x7ffe79c7af7b]
         /tmp/4XOYOX-libshadow-plugin-tor.so(+0x199df0) [0x7ffe79c75df0]
         /home/rob/.shadow/lib/libcrypto.so.1.0.0(+0x10836c)
 [0x7ffe8a27a36c]
 /home/rob/.shadow/lib/libcrypto.so.1.0.0(ERR_load_ERR_strings+0x9b)
 [0x7ffe8a27a8db]
 /home/rob/.shadow/lib/libcrypto.so.1.0.0(ERR_load_crypto_strings+0x9)
 [0x7ffe8a27c379]
         /tmp/SY0LOX-libshadow-plugin-tor.so(crypto_early_init+0x35)
 [0x7ffe795faba5]
         /home/rob/.shadow/lib/libshadow-preload-
 tor.so(crypto_early_init+0x36) [0x7ffe8b8ea366]
         /tmp/SY0LOX-libshadow-plugin-tor.so(tor_init+0x8e)
 [0x7ffe795c9e8e]
         /tmp/SY0LOX-libshadow-plugin-tor.so(scalliontor_start+0x4d)
 [0x7ffe794ae68d]
         /tmp/SY0LOX-libshadow-plugin-tor.so(scalliontor_new+0x127)
 [0x7ffe794ae9b7]
         /tmp/SY0LOX-libshadow-plugin-tor.so(+0x43bfe) [0x7ffe794adbfe]
         /home/rob/.shadow/bin/shadow(thread_executeNew+0xd8) [0x427048]
         /home/rob/.shadow/bin/shadow(process_start+0x194) [0x426184]
         /home/rob/.shadow/bin/shadow(host_startApplication+0x64)
 [0x428644]
         /home/rob/.shadow/bin/shadow(startapplication_run+0x8d) [0x433bcd]
         /home/rob/.shadow/bin/shadow(shadowevent_run+0x167) [0x432c07]
         /home/rob/.shadow/bin/shadow() [0x40ff7e]
         /home/rob/.shadow/bin/shadow(worker_runParallel+0xcf) [0x40fd2f]
         /lib64/libglib-2.0.so.0() [0x359646ea45]
         /lib64/libpthread.so.0() [0x3593c07ee5]
         /lib64/libc.so.6(clone+0x6d) [0x35938f4b8d]
 **END BACKTRACE**
 }}}

 The error does not occur on 0.2.5.10, but does occur on 0.2.5.10 merged
 with the cmux_refactor_configurable_threshold branch.

 I do not believe this is Tor's bug, but a problem with the way Shadow's
 worker threads initialize openssl. Basically, crypto_global_init and
 crypto_early_init should only be called per shadow worker thread, rather
 than once per Tor node. I *thought* I fixed this
 [https://github.com/shadow/shadow-plugin-
 tor/commit/436f52f2414b08ab8af7631c740ad07fe0613643 in this commit] (and
 it would appear so since 0.2.5.10 works fine), but apparently there are
 some differences in the way that is handled in Andrea's branch.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/12889#comment:9>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list