cvs commit: src/sys/nfsserver nfs.h nfs_serv.c nfs_srvcache.c
nfs_srvsock.c nfs_srvsubs.c nfs_syscalls.c nfsm_subs.h
jeff at FreeBSD.org
Sat Mar 17 18:18:09 UTC 2007
jeff 2007-03-17 18:18:09 UTC
FreeBSD src repository
sys/nfsserver nfs.h nfs_serv.c nfs_srvcache.c
- Turn all explicit giant acquires into conditional VFS_LOCK_GIANTs.
Only ops which used namei still remained.
- Implement a scheme for reducing the overhead of tracking which vops
require giant by constantly reducing the number of recursive giant
acquires to one, leaving us with only one vfslocked variable.
- Remove all NFSD lock acquisition and release from the individual nfs
ops. Careful examination has shown that they are not required. This
greatly simplifies the code.
Sponsored by: Isilon Systems, Inc.
Discussed with: rwatson
Tested by: kkenn
Approved by: re
Revision Changes Path
1.82 +1 -4 src/sys/nfsserver/nfs.h
1.171 +187 -554 src/sys/nfsserver/nfs_serv.c
1.44 +2 -0 src/sys/nfsserver/nfs_srvcache.c
1.102 +0 -10 src/sys/nfsserver/nfs_srvsock.c
1.146 +42 -71 src/sys/nfsserver/nfs_srvsubs.c
1.112 +2 -0 src/sys/nfsserver/nfs_syscalls.c
1.39 +2 -5 src/sys/nfsserver/nfsm_subs.h
More information about the cvs-src