on 13/11/2010 13:21 Kostik Belousov said the following: > On Sat, Nov 13, 2010 at 01:09:55PM +0200, Andriy Gapon wrote: >> on 13/11/2010 13:06 Martin Matuska said the following: >>> No, this is not good for us. Solaris does not allow "mounting" of >>> snapshots on any vnode, like we do. Solaris has them only in >>> .zfs/snapshots. This allows us to have read-only mounts without even >>> mounting the parent zfs. >>> >>> Before v15 we have been happy with that code and had no issues :-) >>> >>> I have a very simple testcase where just fixing the VFS_RELE breaks our >>> forced unmount. Let's say we use the correct VFS_RELE in zfs_vfsops.c: >>> VFS_RELE(vfsp->mnt_vnodecovered->v_vfsp); >>> >>> Now let's say you have a mounted filesystem (e.g. md) under /mnt: >>> /dev/md5 on /mnt (ufs, local) >>> >>> # mkdir /mnt/test >>> # mount -t zfs t...@t2 /mnt/test >>> # umount -f /mnt >>> >>> Now you will hang because the second VFS_HOLD. >> >> Hang here would be bad, I agree. >> But I think that the umount shouldn't succeed either, in this case. > Normal unmount indeed shall not succeed in this case, because mount > adds a reference to the covered vnode. But forced unmount should be > allowed to proceed. > > After unmount, you can use fsid to unmount the lower mount point.
Ah, I see now, thank you for the explanation. -- Andriy Gapon _______________________________________________ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"