[omniORB] Race Condition in omniORB 4.0.5 leads to endless loop
Duncan Grisby
duncan at grisby.org
Thu Mar 3 11:33:52 GMT 2005
On Monday 7 February, p.klotz at icoserve.com wrote:
> The attached patch applies against the latest CVS version of omniORB 4.0.x
> (2005-02-07).
Thanks. I checked in your patch a while ago, but forgot to reply.
[...]
> I still see the possibility of race conditions though since the
> combination clearSelectable()/removeSocket() is not protected by a mutex.
> A setSelectable() call that does not respect pd_dying could still
> interfere.
In the omniORB 4.1 development tree, I have changed the SocketCollection
implementation so it maintains its state in a different way. It's still
possible for race conditions to lead to a select() or poll() on a
destroyed socket, but now that doesn't lead to a fatal loop, since the
socket set is rebuilt.
Cheers,
Duncan.
--
-- Duncan Grisby --
-- duncan at grisby.org --
-- http://www.grisby.org --
More information about the omniORB-list
mailing list