diff options
author | jeff <jeff@FreeBSD.org> | 2007-03-17 18:18:08 +0000 |
---|---|---|
committer | jeff <jeff@FreeBSD.org> | 2007-03-17 18:18:08 +0000 |
commit | d43d58ff4578f356c44c4ad57ff2d4c6b2b99a50 (patch) | |
tree | 3cce5e99818314cbc53c7fe494e3fdbfa9017a1e /sys/nfsserver/nfs.h | |
parent | 82143f95ad1b41e027bececf613c3e94f1556ac6 (diff) | |
download | FreeBSD-src-d43d58ff4578f356c44c4ad57ff2d4c6b2b99a50.zip FreeBSD-src-d43d58ff4578f356c44c4ad57ff2d4c6b2b99a50.tar.gz |
- 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
Diffstat (limited to 'sys/nfsserver/nfs.h')
-rw-r--r-- | sys/nfsserver/nfs.h | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/sys/nfsserver/nfs.h b/sys/nfsserver/nfs.h index 292584e..72e1204 100644 --- a/sys/nfsserver/nfs.h +++ b/sys/nfsserver/nfs.h @@ -358,11 +358,8 @@ int nfsrv_commit(struct nfsrv_descript *nfsd, struct nfssvc_sock *slp, struct thread *td, struct mbuf **mrq); int nfsrv_create(struct nfsrv_descript *nfsd, struct nfssvc_sock *slp, struct thread *td, struct mbuf **mrq); -int nfsrv_fhtovp(fhandle_t *, int, struct vnode **, struct ucred *, +int nfsrv_fhtovp(fhandle_t *, int, struct vnode **, int *, struct ucred *, struct nfssvc_sock *, struct sockaddr *, int *, int); -int nfsrv_fhtovp_locked(fhandle_t *, int, struct vnode **, - struct ucred *, struct nfssvc_sock *, struct sockaddr *, int *, - int); int nfsrv_setpublicfs(struct mount *, struct netexport *, struct export_args *); int nfs_ispublicfh(fhandle_t *); |