Signals, threads, and libevent may not necessarily play nice
Sometimes when you control-c a server, multiple threads all get a sigint, and handle it oddly.
<arma2> Feb 27 03:29:09.348 [notice] foo
<arma2> Feb 27 03:29:09.349 [notice] Interrupt: will shut down in 30 seconds. In
terrupt again to exit now.
<arma2> Feb 27 03:29:09.350 [notice] foo
<arma2> Feb 27 03:29:09.351 [notice] Sigint received a second time; exiting now.
<arma2> Feb 27 03:30:35.950 [notice] 1024
<arma2> Feb 27 03:30:35.966 [notice] Interrupt: will shut down in 30 seconds. In
terrupt again to exit now.
<arma2> Feb 27 03:30:35.967 [notice] 1024
<arma2> Feb 27 03:30:35.968 [notice] Sigint received a second time; exiting now.
<arma2> hm.
<arma2> ok, so, not a thread thing.
<arma2> looks like it's getting called twice.
<arma2> does lib event let you double-register?
<arma2> is your tor_get_thread_id() known to work?
> Haven't verified it, no, but it is Really Simple.
> And if it's broken, so is pthreads.
<arma2> ooook :)
<arma2> ah. how's this:
<arma2> i'm not sending a sigint,
<arma2> i'm typing !^c.
<arma2> do you suppose that matters?
<arma2> it does.
> ackpth!
<arma2> whee.
<arma2> is that threads or libevent?
* nickm has no idea what *that* means.
<arma2> are we not allowed to sig_ign a !^c?
> No, I think we are.
<arma2> does !^c sent a sigint to all threads?
<arma2> s/sent/send/
*** You have new email.
> Unspecified afaicr.
<arma2> 'woo'
> Threads and signals is one of the canonically fudgy areas of pthreads iirc.
<arma2> ok i did a kill -INT of a child, and it called hibernate-begin-exit
<arma2> they are not ignoring signals like we'd like them to.
> hmmmmm.
[Automatically added by flyspray2trac: Operating System: All]
issue