svn commit: r196979 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

Pawel Jakub Dawidek pjd at FreeBSD.org
Tue Sep 8 15:42:56 UTC 2009


Author: pjd
Date: Tue Sep  8 15:42:55 2009
New Revision: 196979
URL: http://svn.freebsd.org/changeset/base/196979

Log:
  On FreeBSD we don't have to look for snapshot's mount point,
  because fhtovp method is already called with proper mount point.
  
  MFC after:	1 week

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c	Tue Sep  8 15:37:01 2009	(r196978)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c	Tue Sep  8 15:42:55 2009	(r196979)
@@ -1130,6 +1130,11 @@ zfs_fhtovp(vfs_t *vfsp, fid_t *fidp, vno
 
 	ZFS_ENTER(zfsvfs);
 
+	/*
+	 * On FreeBSD we are already called with snapshot's mount point
+	 * and not the mount point of its parent.
+	 */
+#ifndef __FreeBSD__
 	if (fidp->fid_len == LONG_FID_LEN) {
 		zfid_long_t	*zlfid = (zfid_long_t *)fidp;
 		uint64_t	objsetid = 0;
@@ -1148,6 +1153,7 @@ zfs_fhtovp(vfs_t *vfsp, fid_t *fidp, vno
 			return (EINVAL);
 		ZFS_ENTER(zfsvfs);
 	}
+#endif
 
 	if (fidp->fid_len == SHORT_FID_LEN || fidp->fid_len == LONG_FID_LEN) {
 		zfid_short_t	*zfid = (zfid_short_t *)fidp;


More information about the svn-src-head mailing list