[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