minix/include
David van Moolenbroek 87337273e4 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
2014-03-01 09:04:52 +01:00
..
arch arm:switch to dynamic configuration for the kernel. 2013-12-17 11:32:38 +01:00
arpa Removing obsolete _MINIX define 2013-02-26 09:44:20 +00:00
ddekit Upgrading build system to new NetBSD revision 2012-11-15 16:07:29 +01:00
heimdal Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
minix Remove support for reopening character devices 2014-03-01 09:04:52 +01:00
net Removing obsolete _NBSD_LIBC define 2013-02-26 09:44:24 +00:00
protocols Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
rpc Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
rpcsvc Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
ssp Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
sys TTY: use libchardriver; clean up 2014-03-01 09:04:52 +01:00
a.out.h <a.out.h>, MINIX style: remove as obsolete 2013-08-06 11:43:35 +02:00
aio.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ar.h Import NetBSD's make 2010-02-04 16:52:54 +00:00
assert.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
atomic.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
bitstring.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
bm.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
cdbr.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
cdbw.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
complex.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
cpio.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ctype.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
db.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
dirent.h Alignement on netbsd types, part 1 2014-02-18 11:25:01 +01:00
disktab.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
dlfcn.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
env.h vm: make WARNS=5 proof 2013-09-06 11:51:20 +02:00
err.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
errno.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
fenv.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
fetch.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
fmtmsg.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
fnmatch.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
fstab.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
fts.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ftw.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
getopt.h We have sys/cdefs.h now, so remove hacks. 2010-06-17 15:14:57 +00:00
glob.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
grp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
hesiod.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
iconv.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ieeefp.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
ifaddrs.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
inttypes.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
iso646.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
kvm.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
langinfo.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
lib.h Removing CSU patches 2014-02-18 11:25:02 +01:00
libgen.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
libutil.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
limits.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
link.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
link_aout.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
link_elf.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
locale.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
login_cap.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
lwp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
Makefile Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
malloc.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
math.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
md2.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
memory.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
mntopts.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
monetary.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
mpool.h includes: header files for netbsd db code. 2010-07-14 14:52:02 +00:00
mqueue.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ndbm.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
netconfig.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
netdb.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
netgroup.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
nl_types.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
nlist.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
nsswitch.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
paths.h include/paths.h: correct _PATH_MAILDIR 2013-03-23 13:29:55 +01:00
pwd.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
quota.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
randomid.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ranlib.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
re_comp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
regex.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
regexp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
res_update.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
resolv.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
rmt.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
sa.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
sched.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
search.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
semaphore.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
setjmp.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
sgtty.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
signal.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
stab.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
stdbool.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
stddef.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
stdio.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
stdlib.h Alignement on netbsd types, part 1 2014-02-18 11:25:01 +01:00
string.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
stringlist.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
strings.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
struct.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
sysexits.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
tar.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
tgmath.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
time.h libc: add clock_settime() system call. 2013-04-04 15:04:54 +02:00
timers.h Replaced add64, add64u and add64ul with operators. 2013-11-13 13:11:33 +00:00
ttyent.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
tzfile.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ucontext.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
ulimit.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
unistd.h moving prototypes to lib.h 2014-02-18 11:25:01 +01:00
util.h Updating libutil from netbsd 2012-11-15 16:07:29 +01:00
utime.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
utmp.h Changing field utmp.ut_time from int to time_t 2013-01-14 11:36:27 +01:00
utmpx.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
uuid.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
varargs.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
vis.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
wchar.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
wctype.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
wordexp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00