freebsd-nq/sys/nfsserver
Jeff Roberson 698b1a6643 - Complete part of the unfinished bufobj work by consistently using
BO_LOCK/UNLOCK/MTX when manipulating the bufobj.
 - Create a new lock in the bufobj to lock bufobj fields independently.
   This leaves the vnode interlock as an 'identity' lock while the bufobj
   is an io lock.  The bufobj lock is ordered before the vnode interlock
   and also before the mnt ilock.
 - Exploit this new lock order to simplify softdep_check_suspend().
 - A few sync related functions are marked with a new XXX to note that
   we may not properly interlock against a non-zero bv_cnt when
   attempting to sync all vnodes on a mountlist.  I do not believe this
   race is important.  If I'm wrong this will make these locations easier
   to find.

Reviewed by:	kib (earlier diff)
Tested by:	kris, pho (earlier diff)
2008-03-22 09:15:16 +00:00
..
nfs_serv.c - Complete part of the unfinished bufobj work by consistently using 2008-03-22 09:15:16 +00:00
nfs_srvcache.c - Turn all explicit giant acquires into conditional VFS_LOCK_GIANTs. 2007-03-17 18:18:08 +00:00
nfs_srvsock.c Fix a regression from the last revision - don't edit the ns_rec list while 2008-03-19 12:33:25 +00:00
nfs_srvsubs.c Use nfsrv_destroycache() only once, else it crashes the server. 2008-01-18 17:03:36 +00:00
nfs_syscalls.c Set the NFS server sockbuf high watermarks to the system defaults 2007-10-12 03:56:27 +00:00
nfs.h Garbage collect now-unused nfsrv_setcred() -- it's not only unused, but 2007-11-04 19:20:33 +00:00
nfsm_subs.h - Turn all explicit giant acquires into conditional VFS_LOCK_GIANTs. 2007-03-17 18:18:08 +00:00
nfsrvcache.h Size the NFS server dupreq cache on the basis of nmbclusters. On servers 2006-06-23 00:42:26 +00:00
nfsrvstats.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00