aba392e630
- Remove redundant code. - Always wait for the initial reply from an asynchronous select request, even if the select has been satisfied on another file descriptor or was canceled due to a serious error. - Restart asynchronous selects if upon reply from the driver turns out that there are deferred operations (and do not forget we're still interested in the results of the deferred operations). - Do not hang a non-blocking select when another blocking select on the same filp is still blocking. - Split blocking operations in read, write, and exceptions (i.e., blocking on read does not imply the write will block as well). - Some loops would iterate over OPEN_MAX file descriptors instead of the "highest" file descriptor. - Use proper internal error return values. - A secondary reply from a synchronous driver is essentially the same as from an asynchronous driver (the only difference being how the answer is received). Merge. - Return proper error code after a driver failure. - Auto-detect whether a driver is synchronous or asynchronous. - Remove some code duplication. - Clean up code (coding style, add missing comments, put all select related code together). |
||
---|---|---|
.. | ||
devman | ||
ds | ||
ext2 | ||
hgfs | ||
inet | ||
init | ||
ipc | ||
is | ||
iso9660fs | ||
lwip | ||
mfs | ||
pfs | ||
pm | ||
procfs | ||
rs | ||
sched | ||
vfs | ||
vm | ||
Makefile | ||
Makefile.inc |