From: Eric Wong Date: 2011-09-21T05:58:40+09:00 Subject: [ruby-core:39643] Re: [Ruby 1.9 - Bug #5343] Unexpected blocking behavior when interrupt Socket#accept SASADA Koichi wrote: > (2011/09/20 2:22), Tomoyuki Chikanaga wrote: > > I guess this is because SIGVTALRM from send from ubf_select() is received by blocking thread after GVL release but before enter poll(2)/ppoll(2). > > Thanks. I understand. How about it? I'm not sure issues like this are completely avoidable, but your patch seems to help avoid it. I needed ~15K tries to reproduce blocking on the original test case (no SMP on this Xen VM). So far I'm at 65K loop interations and still going... I will update if I notice it blocked again.