]> Zhao Yanbai Git Server - minix.git/commit
VFS: various select fixes
authorThomas Veerman <thomas@minix3.org>
Fri, 17 Feb 2012 13:36:57 +0000 (13:36 +0000)
committerThomas Veerman <thomas@minix3.org>
Fri, 17 Feb 2012 21:09:07 +0000 (21:09 +0000)
commitc540bcb0013922ae46547fe68189c687c907e1ce
tree00f4e56dca57affe1efc016a11bed9e9d25f7d4f
parent4c156d8a32f8f584e73e17597c264e664bd13931
VFS: various select fixes

- Fix locking bug when unable to send DEV_SELECT request. Upon failure
  VFS tried to cancel the select operation, but this failed due to trying
  to lock a filp that was already locked to send the request in the first
  place. Do_select_request now handles locking of filps itself instead of
  relying on the caller to do it.  This fixes a crash when killing INET.
- Fix failure to revive a process after a non-blocking select operation
  yielded no ready select operations when replying DEV_SEL_REPL1.
- Improve readability by using OK, SUSPEND, and standard error values as
  results instead of having separate macros in select.
- Don't print not having a driver for a major device; after killing a driver
  select will trigger this printf.
servers/vfs/device.c
servers/vfs/pipe.c
servers/vfs/select.c
servers/vfs/select.h [deleted file]