minix/minix
David van Moolenbroek de95c84d3e VFS: fix short select(2) timeouts
Some select queries require a response from device drivers.  If a
select call is nonblocking (with a zero timeout), the response to
the caller may have to be deferred until all involved drivers have
responded to the initial query.  This is handled just fine.

However, if the select call has a timeout that is so short that it
triggers before all the involved drivers have responded, the
resulting alarm would be discarded, possibly resulting in the call
blocking forever.  This fix changes the alarm handler such that if
the alarm triggers too early, the select call is further handled
as though it was nonblocking.

This fix resolves a test77 deadlock on really slow systems.

Change-Id: Ib487c8fe436802c3e11c57355ae0c8480721f06e
2015-09-16 10:41:46 +00:00
..
bin New sources layout 2014-07-31 16:00:30 +02:00
commands libminixfs/VM: fix memory-mapped file corruption 2015-08-13 13:46:46 +00:00
drivers audio: use standard Makefile structure 2015-08-08 16:55:03 +00:00
fs procfs: do not list init in /proc/services 2015-09-07 22:56:19 +00:00
include libminixfs: rework prefetch API 2015-08-14 18:39:30 +00:00
kernel Kernel: improve stacktrace printing 2015-09-07 22:56:00 +00:00
lib libminixfs: rework prefetch API 2015-08-14 18:39:30 +00:00
llvm minix/llvm/passes/Makefile.inc: Fix 2014-08-29 12:56:57 -04:00
man Import NetBSD syslogd(8) 2015-07-26 11:57:04 +00:00
net inet: resolve some compile and runtime warnings 2015-09-01 16:21:20 +00:00
sbin New sources layout 2014-07-31 16:00:30 +02:00
servers VFS: fix short select(2) timeouts 2015-09-16 10:41:46 +00:00
share New sources layout 2014-07-31 16:00:30 +02:00
tests VFS: check X bit, not R bit, opening executables 2015-08-31 12:55:55 +00:00
usr.bin VFS: add support for F_DUPFD_CLOEXEC 2015-07-20 13:55:10 +00:00
usr.sbin mkfs.mfs: remove Linux mount check 2015-07-20 10:59:49 +00:00
Makefile benchmarks: remove unixbench 2015-07-20 11:05:28 +00:00
Makefile.inc New sources layout 2014-07-31 16:00:30 +02:00