Async IO on sockets: good news and bad news

Martin Wilck Martin.Wilck at fujitsu-siemens.com
Thu Apr 11 15:18:56 CDT 2002


Hi,

The good news is: I have the basic mechanism for async IO on sockets
running. Requests can be scheduled and waited for, just like for regular
files.

The bad news is: This is not enough for sockets.

Problems occur especially when sockets are closed, because the signalling
of socket events uses a completely independent mechanism.

This leads to all sorts of strange behaviour, mostly to data loss
because "FD_CLOSE" is signalled prematurely.

Sadly, this means for me:
- The whole event signalling mechanism needs to be reworked so that it
  is consistent with overlapped IO.
- Probably the async IO mechanism, too.
  It seems that it would be good to have a single IO queue where all
  events are handled, rather than several ones.
  Unlike now, also things like "peer closed socket" would be scheduled
  in that queue.

Well I need to think more.
Currently, I am not even sure how exactly it _should_ work.

Martin
-- 
Martin Wilck                Phone: +49 5251 8 15113
Fujitsu Siemens Computers   Fax:   +49 5251 8 20409
Heinz-Nixdorf-Ring 1	    mailto:Martin.Wilck at Fujitsu-Siemens.com
D-33106 Paderborn           http://www.fujitsu-siemens.com/primergy








More information about the wine-devel mailing list