freebsd-dev/sys/i386/linux
Brian Feldman 13ccadd4b0 This is what was "fdfix2.patch," a fix for fd sharing. It's pretty
far-reaching in fd-land, so you'll want to consult the code for
changes.  The biggest change is that now, you don't use
	fp->f_ops->fo_foo(fp, bar)
but instead
	fo_foo(fp, bar),
which increments and decrements the fp refcount upon entry and exit.
Two new calls, fhold() and fdrop(), are provided.  Each does what it
seems like it should, and if fdrop() brings the refcount to zero, the
fd is freed as well.

Thanks to peter ("to hell with it, it looks ok to me.") for his review.
Thanks to msmith for keeping me from putting locks everywhere :)

Reviewed by:	peter
1999-09-19 17:00:25 +00:00
..
imgact_linux.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
linux_dummy.c Implementation of the modify_ldt syscall. Use the sysarch() interface to do 1999-09-02 21:50:42 +00:00
linux_file.c This is what was "fdfix2.patch," a fix for fd sharing. It's pretty 1999-09-19 17:00:25 +00:00
linux_genassym.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
linux_ioctl.c This is what was "fdfix2.patch," a fix for fd sharing. It's pretty 1999-09-19 17:00:25 +00:00
linux_ipc.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
linux_locore.s Use ALIGN_TEXT macro for alignment to avoid ambiguity. 1999-08-25 19:04:39 +00:00
linux_mib.c $Id$ -> $FreeBSD$ 1999-08-28 02:16:32 +00:00
linux_mib.h $Id$ -> $FreeBSD$ 1999-08-28 02:16:32 +00:00
linux_misc.c I missed the namechange of field desc in struct i386_ldt_args into descs while 1999-09-03 06:18:39 +00:00
linux_proto.h Regen after Id->FreeBSD 1999-08-28 02:35:56 +00:00
linux_signal.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
linux_socket.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
linux_stats.c Fix a braino: Linux minor device numbers are 8 bits wide and not 10. 1999-08-29 11:47:01 +00:00
linux_syscall.h Regen after Id->FreeBSD 1999-08-28 02:35:56 +00:00
linux_sysent.c Regen after Id->FreeBSD 1999-08-28 02:35:56 +00:00
linux_sysvec.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
linux_util.c $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
linux_util.h $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
linux.h Implement the OSS_GETVERSION ioctl. The version returned can be changed through 1999-08-28 08:43:03 +00:00
Makefile $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
syscalls.conf $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
syscalls.master $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00