Date: Sun, 19 Sep 1999 10:00:26 -0700 (PDT) From: Brian Feldman <green@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/i386/ibcs2 ibcs2_fcntl.c ibcs2_ioctl.c src/sys/i386/linux linux_file.c linux_ioctl.c src/sys/kern kern_descrip.c sys_generic.c sys_pipe.c sys_socket.c uipc_syscalls.c vfs_aio.c vfs_vnops.c src/sys/sys file.h ... Message-ID: <199909191700.KAA05277@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
green 1999/09/19 10:00:26 PDT Modified files: sys/i386/ibcs2 ibcs2_fcntl.c ibcs2_ioctl.c sys/i386/linux linux_file.c linux_ioctl.c sys/kern kern_descrip.c sys_generic.c sys_pipe.c sys_socket.c uipc_syscalls.c vfs_aio.c vfs_vnops.c sys/sys file.h socketvar.h sys/svr4 svr4_fcntl.c svr4_filio.c svr4_sockio.c svr4_stream.c svr4_termios.c svr4_ttold.c Log: 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 Revision Changes Path 1.14 +2 -2 src/sys/i386/ibcs2/ibcs2_fcntl.c 1.13 +10 -11 src/sys/i386/ibcs2/ibcs2_ioctl.c 1.34 +2 -2 src/sys/i386/linux/linux_file.c 1.45 +20 -22 src/sys/i386/linux/linux_ioctl.c 1.68 +27 -20 src/sys/kern/kern_descrip.c 1.49 +11 -12 src/sys/kern/sys_generic.c 1.55 +7 -5 src/sys/kern/sys_pipe.c 1.27 +5 -3 src/sys/kern/sys_socket.c 1.58 +5 -1 src/sys/kern/uipc_syscalls.c 1.59 +5 -5 src/sys/kern/vfs_aio.c 1.82 +13 -8 src/sys/kern/vfs_vnops.c 1.20 +97 -3 src/sys/sys/file.h 1.41 +3 -3 src/sys/sys/socketvar.h 1.6 +2 -2 src/sys/svr4/svr4_fcntl.c 1.5 +2 -4 src/sys/svr4/svr4_filio.c 1.5 +3 -5 src/sys/svr4/svr4_sockio.c 1.5 +2 -3 src/sys/svr4/svr4_stream.c 1.4 +6 -8 src/sys/svr4/svr4_termios.c 1.4 +12 -17 src/sys/svr4/svr4_ttold.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199909191700.KAA05277>