Author: kmacy
Date: Sat May 16 20:33:13 2009
New Revision: 192211
URL: http://svn.freebsd.org/changeset/base/192211

Log:
  - allow forced unmounts
  - don't assume snapshot was auto-mounted

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    Sat May 
16 20:26:01 2009        (r192210)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c    Sat May 
16 20:33:13 2009        (r192211)
@@ -967,8 +967,7 @@ zfs_umount(vfs_t *vfsp, int fflag)
 
        if (fflag & MS_FORCE) {
                /* TODO: Force unmount is not well implemented yet, so deny it. 
*/
-               ZFS_LOG(0, "Force unmount is not supported, removing FORCE 
flag.");
-               fflag &= ~MS_FORCE;
+               ZFS_LOG(0, "Force unmount is experimental - report any 
problems.");
        }
 
        ret = secpolicy_fs_unmount(cr, vfsp);
@@ -1070,8 +1069,9 @@ zfs_umount(vfs_t *vfsp, int fflag)
        if (zfsvfs->z_issnap) {
                vnode_t *svp = vfsp->mnt_vnodecovered;
 
-               ASSERT(svp->v_count == 2);
-               VN_RELE(svp);
+               ASSERT(svp->v_count == 2 || svp->v_count == 1);
+               if (svp->v_count == 2)
+                       VN_RELE(svp);
        }
        zfs_freevfs(vfsp);
 
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to