]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
- Implement a lockless file descriptor lookup algorithm in
authorjeff <jeff@FreeBSD.org>
Thu, 14 May 2009 03:24:22 +0000 (03:24 +0000)
committerjeff <jeff@FreeBSD.org>
Thu, 14 May 2009 03:24:22 +0000 (03:24 +0000)
commit20397e643153b90263768cb71928b488cab2c91e
tree03247850c0c9db357665199f280535e6edca7d99
parentdc1ac440de95721f8b696146577a51ef7a418f59
 - Implement a lockless file descriptor lookup algorithm in
   fget_unlocked().
 - Save old file descriptor tables created on expansion until
   the entire descriptor table is freed so that pointers may be
   followed without regard for expanders.
 - Mark the file zone as NOFREE so we may attempt to reference
   potentially freed files.
 - Convert several fget_locked() users to fget_unlocked().  This
   requires us to manage reference counts explicitly but reduces
   locking overhead in the common case.
sys/kern/kern_descrip.c
sys/kern/sys_generic.c
sys/kern/tty.c
sys/kern/uipc_syscalls.c
sys/kern/vfs_syscalls.c
sys/sys/filedesc.h