svn commit: r214976 - stable/8/sys/nfsserver
Konstantin Belousov
kib at FreeBSD.org
Mon Nov 8 10:18:02 UTC 2010
Author: kib
Date: Mon Nov 8 10:18:01 2010
New Revision: 214976
URL: http://svn.freebsd.org/changeset/base/214976
Log:
MFC r214851:
Fix a bug in r214049. The nvp == vp case shall be handled specially
only for !usevget case. If VFS_VGET is working, the vnode shared lock
is obtained recursively and vput() shall be done, not vunref().
Modified:
stable/8/sys/nfsserver/nfs_serv.c
Directory Properties:
stable/8/sys/ (props changed)
stable/8/sys/amd64/include/xen/ (props changed)
stable/8/sys/cddl/contrib/opensolaris/ (props changed)
stable/8/sys/contrib/dev/acpica/ (props changed)
stable/8/sys/contrib/pf/ (props changed)
stable/8/sys/dev/xen/xenpci/ (props changed)
Modified: stable/8/sys/nfsserver/nfs_serv.c
==============================================================================
--- stable/8/sys/nfsserver/nfs_serv.c Mon Nov 8 10:08:30 2010 (r214975)
+++ stable/8/sys/nfsserver/nfs_serv.c Mon Nov 8 10:18:01 2010 (r214976)
@@ -3252,7 +3252,7 @@ again:
nfhp->fh_fsid = nvp->v_mount->mnt_stat.f_fsid;
if ((error1 = VOP_VPTOFH(nvp, &nfhp->fh_fid)) == 0)
error1 = VOP_GETATTR(nvp, vap, cred);
- if (vp == nvp)
+ if (!usevget && vp == nvp)
vunref(nvp);
else
vput(nvp);
More information about the svn-src-all
mailing list