minix/lib
David van Moolenbroek 3835235193 Remove support for reopening character devices
Previously, VFS would reopen a character device after a driver crash
if the associated file descriptor was opened with the O_REOPEN flag.
This patch removes support for this feature. The code was complex,
full of uncovered corner cases, and hard to test. Moreover, it did not
actually hide the crash from user applications: they would get an
error code to indicate that something went wrong, and have to decide
based on the nature of the underlying device how to continue.

- remove support for O_REOPEN, and make playwave(1) reopen its device;
- remove support for the DEV_REOPEN protocol message;
- remove all code in VFS related to reopening character devices;
- no longer change VFS filp reference count and FD bitmap upon filp
  invalidation; instead, make get_filp* fail all calls on invalidated
  FDs except when obtained with the locktype VNODE_OPCL which is used
  by close_fd only;
- remove the VFS fproc file descriptor bitmap entirely, returning to
  the situation that a FD is in use if its slot points to a filp; use
  FILP_CLOSED as single means of marking a filp as invalidated.

Change-Id: I34f6bc69a036b3a8fc667c1f80435ff3af56558f
2013-09-28 00:10:56 +02:00
..
csu Removing CSU patches 2013-09-28 00:10:47 +02:00
libasyn No more intel/minix segments. 2012-07-15 22:30:15 +02:00
libaudiodriver libaudiodriver: use libchardriver 2013-09-28 00:10:54 +02:00
libbdev Block protocol: add user endpoint to IOCTL request 2013-09-28 00:10:53 +02:00
libblockdriver Block drivers: make IOCTL request unsigned long 2013-09-28 00:10:53 +02:00
libbz2 Upgrading bzip2 2012-11-21 18:32:06 +01:00
libc Retire EBADIOCTL in favor of ENOTTY 2013-09-28 00:10:55 +02:00
libchardriver Remove support for reopening character devices 2013-09-28 00:10:56 +02:00
libclkconf i2c: initial bus drivers for am335x and dm37xx 2013-07-15 11:11:13 -04:00
libcompat_minix <a.out.h>, MINIX style: remove as obsolete 2013-08-06 11:43:35 +02:00
libcrypt Updating lib/libcrypt 2013-01-14 11:36:27 +01:00
libcurses Removing useless __NBSD_LIBC define in libcurses 2013-01-17 10:03:58 +01:00
libddekit Retire the synchronous character driver protocol 2013-09-28 00:10:48 +02:00
libdevman panic: declare as printf-style-checked 2013-05-31 13:35:25 +00:00
libedit fix a few more minix specific warnings 2013-08-27 16:16:03 +00:00
libelf libelf:use self hosted m4. 2013-04-24 17:22:59 +02:00
libexec Removing CSU patches 2013-09-28 00:10:47 +02:00
libfetch Removing obsolete _MINIX define 2013-02-26 09:44:20 +00:00
libgpio gpio: port to am335x 2013-09-03 08:14:18 -04:00
libhgfs Create SFFS library out of HGFS 2012-04-09 18:08:26 +02:00
libi2cdriver I2C: change BUSC_I2C_xxx to use own protocol 2013-09-28 00:10:51 +02:00
liblwip fix a few more minix specific warnings 2013-08-27 16:16:03 +00:00
libm libm Makefile: typo (from NetBSD) 2013-08-05 23:57:26 +02:00
libminc Removing CSU patches 2013-09-28 00:10:47 +02:00
libminixfs 32 to 64 bits fsblkcnt_t and fsfilcnt_t. 2013-09-28 00:03:43 +02:00
libminlib struct uucred 2013-09-28 00:03:43 +02:00
libmthread libmthread: do not dump stack for free threads 2013-09-28 00:10:50 +02:00
libnetdriver libnetdriver: only block datalink messages 2013-08-18 12:09:51 +02:00
libnetsock libnetsock: use libchardriver 2013-09-28 00:10:55 +02:00
libprop a bit more -Werror compatability 2013-08-20 11:37:40 +02:00
libpuffs Fix various file system warnings 2013-09-28 00:10:46 +02:00
librefuse Let the build system manage compilation flags 2013-03-08 09:41:49 +01:00
librmt Fix warnings trivial warnings. 2013-01-14 11:44:31 +01:00
libsffs VFS/FS: replace protocol version with flag field 2013-09-28 00:10:46 +02:00
libsys Retire the synchronous character driver protocol 2013-09-28 00:10:48 +02:00
libterminfo Re-adding extended keys in minix termcap entry 2013-01-23 21:28:17 +01:00
libtimers Replace NULL macro defs with null.h include 2010-07-22 10:03:31 +00:00
libusb panic: declare as printf-style-checked 2013-05-31 13:35:25 +00:00
libutil libutil: let opendisk(3) try /dev 2013-09-28 00:10:53 +02:00
libvassert No more intel/minix segments. 2012-07-15 22:30:15 +02:00
libvboxfs libvboxfs: fix setting file mtimes 2012-10-17 23:01:24 +02:00
libvirtio Alignement on netbsd types, part 1 2013-09-28 00:03:42 +02:00
libvtreefs VFS/FS: replace protocol version with flag field 2013-09-28 00:10:46 +02:00
libz Downgrading to netbsd zlib version 2013-04-09 16:43:13 +02:00
lua Importing NetBSD "Kyua" test framework 2013-07-23 20:43:41 +02:00
Makefile kernel: add padconf kernel call 2013-08-28 12:53:05 -04:00
Makefile.inc Removing obsolete _MINIX define 2013-02-26 09:44:20 +00:00