On Thu, 25 Apr 2002, Rein Klazes wrote:
Here is the same +comm,+file now with added +server:
| trace:file:FILE_ReadFileEx file 232 to buf 0x405953f0 num 8 0x409032e4 func (nil) | 0806cfe8: get_handle_fd( handle=232, access=80000000 ) | 0806cfe8: get_handle_fd() = 0 { fd=18, type=1, flags=1 } | 0806cfe8: register_async( handle=232, type=1, overlapped=0x41d615b0, count=8, status=00000103 ) | 0806cfe8: register_async() = 0 => async request successfully registered
| trace:file:GetOverlappedResult (232 0x409032e4 0x405953a4 0) | trace:file:GetOverlappedResult waiting on 0x409032e4 | 0806cfe8: select( flags=14, cookie=0x405951bc, sec=1019746522, usec=250830, handles={236} ) | 0806cfe8: select() = TIMEOUT => async has not been served yet - TIMEOUT. The reason is that the file descriptot for serial port had not been polled in the meantime.
OK, I know what to do about that. When register_async is called with a new request, we must immediately look for pending events, as we do with sockets. Thanks for spotting this, expect a patch soon. Martin -- Martin Wilck Phone: +49 5251 8 15113 Fujitsu Siemens Computers Fax: +49 5251 8 20409 Heinz-Nixdorf-Ring 1 mailto:Martin.Wilck(a)Fujitsu-Siemens.com D-33106 Paderborn http://www.fujitsu-siemens.com/primergy