]> Zhao Yanbai Git Server - minix.git/commit
VFS: unbreak select on /dev/tty 87/2787/1
authorDavid van Moolenbroek <david@minix3.org>
Tue, 26 Aug 2014 22:28:58 +0000 (22:28 +0000)
committerDavid van Moolenbroek <david@minix3.org>
Thu, 28 Aug 2014 16:30:48 +0000 (16:30 +0000)
commit27d0ecdb624228487a475d72d67d3320abb40fc8
tree2b65937453c5d565299126f49fc9ce91a640ad00
parent673c4e01a5be4fa6f14c51ee6c3acddcfc0d2104
VFS: unbreak select on /dev/tty

The remapping from /dev/tty to the real controlling terminal in the
device code was confusing the select code.  The latter is now aware
of this case and should handle it properly, at the cost of one extra
field in the filp structure.

There is a nasty, hopefully sufficiently rare case of /dev/tty being
kept open while controlling terminals are changing, that we are still
not handling.  Doing so would require more than just a few changes,
but the code should at least detect and cleanly fail on this case.

Test77 now has a basic test set for selecting on /dev/tty.

Change-Id: Iaedea449cdb728d0e66a9de8faacdfd9638dfe92
minix/servers/vfs/device.c
minix/servers/vfs/file.h
minix/servers/vfs/filedes.c
minix/servers/vfs/misc.c
minix/servers/vfs/proto.h
minix/servers/vfs/select.c
minix/tests/test77.c