summaryrefslogtreecommitdiffstats
path: root/sys/nfsserver/nfs_serv.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/nfsserver/nfs_serv.c')
-rw-r--r--sys/nfsserver/nfs_serv.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/nfsserver/nfs_serv.c b/sys/nfsserver/nfs_serv.c
index a7bf43c..bc6e4ff 100644
--- a/sys/nfsserver/nfs_serv.c
+++ b/sys/nfsserver/nfs_serv.c
@@ -225,8 +225,13 @@ nfsrv3_access(struct nfsrv_descript *nfsd, struct nfssvc_sock *slp,
tl = nfsm_build(u_int32_t *, NFSX_UNSIGNED);
*tl = txdr_unsigned(nfsmode);
nfsmout:
- if (vp)
+ if (vp) {
+ NFSD_UNLOCK();
+ mtx_lock(&Giant); /* VFS */
vput(vp);
+ mtx_unlock(&Giant); /* VFS */
+ NFSD_LOCK();
+ }
return(error);
}
OpenPOWER on IntegriCloud