svn commit: r186310 - releng/7.1/sys/nfsserver
Ken Smith
kensmith at FreeBSD.org
Fri Dec 19 04:02:17 UTC 2008
Author: kensmith
Date: Fri Dec 19 04:02:16 2008
New Revision: 186310
URL: http://svn.freebsd.org/changeset/base/186310
Log:
MFC r186165:
> Handle VFS_VGET() failing with an error other than EOPNOTSUPP in addition
> to failing with that error.
>
> PR: 125149
> Submitted by: Jaakko Heinonen (jh <at> saunalahti <dot> fi)
> Reviewed by: mohans, kan
Approved by: re (kib)
Modified:
releng/7.1/sys/nfsserver/nfs_serv.c
Modified: releng/7.1/sys/nfsserver/nfs_serv.c
==============================================================================
--- releng/7.1/sys/nfsserver/nfs_serv.c Fri Dec 19 03:59:20 2008 (r186309)
+++ releng/7.1/sys/nfsserver/nfs_serv.c Fri Dec 19 04:02:16 2008 (r186310)
@@ -3600,9 +3600,12 @@ again:
* Probe one of the directory entries to see if the filesystem
* supports VGET.
*/
- if (VFS_VGET(vp->v_mount, dp->d_fileno, LK_EXCLUSIVE, &nvp) ==
- EOPNOTSUPP) {
- error = NFSERR_NOTSUPP;
+ error = VFS_VGET(vp->v_mount, dp->d_fileno, LK_EXCLUSIVE, &nvp);
+ if (error) {
+ if (error == EOPNOTSUPP)
+ error = NFSERR_NOTSUPP;
+ else
+ error = NFSERR_SERVERFAULT;
vrele(vp);
vp = NULL;
free((caddr_t)cookies, M_TEMP);
More information about the svn-src-all
mailing list