Date: Wed, 6 Jan 2010 16:09:58 +0000 (UTC) From: Alexander Leidinger <netchild@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/cddl/compat/opensolaris/kern opensolaris_vfs.c src/sys/cddl/compat/opensolaris/sys vfs.h src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs zfs_acl.c zfs_ctldir.c zfs_vfsops.c zfs_vnops.c zfs_znode.c src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys zfs_znode.h Message-ID: <201001061610.o06GAWfS089899@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
netchild 2010-01-06 16:09:58 UTC FreeBSD src repository Modified files: (Branch: RELENG_7) sys/cddl/compat/opensolaris/kern opensolaris_vfs.c sys/cddl/compat/opensolaris/sys vfs.h sys/cddl/contrib/opensolaris/uts/common/fs/zfs zfs_acl.c zfs_ctldir.c zfs_vfsops.c zfs_vnops.c zfs_znode.c sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys zfs_znode.h Log: SVN rev 201651 on 2010-01-06 16:09:58Z by netchild MFC several ZFS related commits: r196980: ---snip--- When we automatically mount snapshot we want to return vnode of the mount point from the lookup and not covered vnode. This is one of the fixes for using .zfs/ over NFS. ---snip--- r196982: ---snip--- We don't export individual snapshots, so mnt_export field in snapshot's mount point is NULL. That's why when we try to access snapshots over NFS use mnt_export field from the parent file system. ---snip--- r197131: ---snip--- Tighten up the check for race in zfs_zget() - ZTOV(zp) can not only contain NULL, but also can point to dead vnode, take that into account. PR: kern/132068 Reported by: Edward Fisk" <7ogcg7g02@sneakemail.com>, kris Fix based on patch from: Jaakko Heinonen <jh@saunalahti.fi> ---snip--- r197133: ---snip--- - Protect reclaim with z_teardown_inactive_lock. - Be prepared for dbuf to disappear in zfs_reclaim_complete() and check if z_dbuf field is NULL - this might happen in case of rollback or forced unmount between zfs_freebsd_reclaim() and zfs_reclaim_complete(). - On forced unmount wait for all znodes to be destroyed - destruction can be done asynchronously via zfs_reclaim_complete(). ---snip--- r197153: ---snip--- When zfs.ko is compiled with debug, make sure that znode and vnode point at each other. ---snip--- r197167: ---snip--- Work-around READDIRPLUS problem with .zfs/ and .zfs/snapshot/ directories by just returning EOPNOTSUPP. This will allow NFS server to fall back to regular READDIR. Note that converting inode number to snapshot's vnode is expensive operation. Snapshots are stored in AVL tree, but based on their names, not inode numbers, so to convert inode to snapshot vnode we have to interate over all snalshots. This is not a problem in OpenSolaris, because in their READDIRPLUS implementation they use VOP_LOOKUP() on d_name, instead of VFS_VGET() on d_fileno as we do. PR: kern/125149 Reported by: Weldon Godfrey <wgodfrey@ena.com> Analysis by: Jaakko Heinonen <jh@saunalahti.fi> ---snip--- r197177: ---snip--- Support both case: when snapshot is already mounted and when it is not yet mounted. ---snip--- r197201: ---snip--- - Mount ZFS snapshots with MNT_IGNORE flag, so they are not visible in regular df(1) and mount(8) output. This is a bit smilar to OpenSolaris and follows ZFS route of not listing snapshots by default with 'zfs list' command. - Add UPDATING entry to note that ZFS snapshots are no longer visible in mount(8) and df(1) output by default. Reviewed by: kib ---snip--- Note: the MNT_IGNORE part is commented out in this commit and the UPDATING entry is not merged, as this would be a POLA violation on a stable branch. This revision is included here, as it also makes locking changes and makes sure that a snapshot is mounted RO. r197426: ---snip--- Restore BSD behaviour - when creating new directory entry use parent directory gid to set group ownership and not process gid. This was overlooked during v6 -> v13 switch. PR: kern/139076 Reported by: Sean Winn <sean@gothic.net.au> ---snip--- r197458: ---snip--- Close race in zfs_zget(). We have to increase usecount first and then check for VI_DOOMED flag. Before this change vnode could be reclaimed between checking for the flag and increasing usecount. ---snip--- Revision Changes Path 1.10.2.5 +35 -34 src/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c 1.3.2.3 +2 -2 src/sys/cddl/compat/opensolaris/sys/vfs.h 1.3.2.5 +19 -0 src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_znode.h 1.3.2.3 +1 -1 src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c 1.8.2.5 +12 -12 src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c 1.14.2.5 +54 -1 src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c 1.31.2.8 +18 -6 src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c 1.15.2.5 +22 -4 src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201001061610.o06GAWfS089899>