diff options
author | avg <avg@FreeBSD.org> | 2016-12-24 14:23:14 +0000 |
---|---|---|
committer | avg <avg@FreeBSD.org> | 2016-12-24 14:23:14 +0000 |
commit | 2e70302a11d1117fac0b4e0976f4afd4ea5f012f (patch) | |
tree | 2a1589209e9c17b84c02d901c3636f780852c5e9 /sys/cddl | |
parent | 354e89f3394627c5b546fd6afcc07786cc733066 (diff) | |
download | FreeBSD-src-2e70302a11d1117fac0b4e0976f4afd4ea5f012f.zip FreeBSD-src-2e70302a11d1117fac0b4e0976f4afd4ea5f012f.tar.gz |
MFC r309099: MFV r308990: 7181 race between zfs_mount and zfs_ioc_rollback
Diffstat (limited to 'sys/cddl')
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c index 2a9e7ab..112d965 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c @@ -1040,13 +1040,6 @@ zfsvfs_setup(zfsvfs_t *zfsvfs, boolean_t mounting) if (error) return (error); - /* - * Set the objset user_ptr to track its zfsvfs. - */ - mutex_enter(&zfsvfs->z_os->os_user_ptr_lock); - dmu_objset_set_user(zfsvfs->z_os, zfsvfs); - mutex_exit(&zfsvfs->z_os->os_user_ptr_lock); - zfsvfs->z_log = zil_open(zfsvfs->z_os, zfs_get_data); /* @@ -1107,6 +1100,13 @@ zfsvfs_setup(zfsvfs_t *zfsvfs, boolean_t mounting) zfsvfs->z_vfs->vfs_flag |= readonly; /* restore readonly bit */ } + /* + * Set the objset user_ptr to track its zfsvfs. + */ + mutex_enter(&zfsvfs->z_os->os_user_ptr_lock); + dmu_objset_set_user(zfsvfs->z_os, zfsvfs); + mutex_exit(&zfsvfs->z_os->os_user_ptr_lock); + return (0); } |