Issue #4535 has been reported by Eric Wong.

----------------------------------------
Bug #4535: [PATCH] fix race in blocking send_io/recv_io
http://redmine.ruby-lang.org/issues/4535

Author: Eric Wong
Status: Open
Priority: Normal
Assignee: 
Category: ext
Target version: 1.9.x
ruby -v: ruby 1.9.3dev (2011-03-28 trunk 31195) [x86_64-linux]


There is no need to call select() before entering a blocking I/O
region since other threads may run.  select() cannot guarantee
readability if the IO is shared across different
threads/processes.  Furthermore, we actually need to select() on
EAGAIN/EINTR since the functions are intended to be blocking so
we move the select() calls into the retry loop.



-- 
http://redmine.ruby-lang.org