summaryrefslogtreecommitdiffstats
path: root/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c
diff options
context:
space:
mode:
authorpjd <pjd@FreeBSD.org>2008-11-25 21:14:00 +0000
committerpjd <pjd@FreeBSD.org>2008-11-25 21:14:00 +0000
commit49203afd8c7d7140010993df59b7bfdb0557de3f (patch)
tree1909c16832a56eb1acac6a8c2f278445984e360c /sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c
parent12359ec70ec661ba582eacfd18561d9e3ca3ed4e (diff)
downloadFreeBSD-src-49203afd8c7d7140010993df59b7bfdb0557de3f.zip
FreeBSD-src-49203afd8c7d7140010993df59b7bfdb0557de3f.tar.gz
Fix locking (file descriptor table and Giant around VFS).
Most submitted by: kib Reviewed by: kib
Diffstat (limited to 'sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c')
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c
index c1af465..51770fc 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c
@@ -154,11 +154,10 @@ out:
static void
spa_config_write(spa_config_dirent_t *dp, nvlist_t *nvl)
{
+ int oflags = FWRITE | FTRUNC | FCREAT | FOFFMAX;
+ char *buf, *temp;
size_t buflen;
- char *buf;
vnode_t *vp;
- int oflags = FWRITE | FTRUNC | FCREAT | FOFFMAX;
- char *temp;
/*
* If the nvlist is empty (NULL), then remove the old cachefile.
@@ -193,7 +192,6 @@ spa_config_write(spa_config_dirent_t *dp, nvlist_t *nvl)
(void) vn_rename(temp, dp->scd_path, UIO_SYSSPACE);
}
(void) VOP_CLOSE(vp, oflags, 1, 0, kcred, NULL);
- VN_RELE(vp);
}
(void) vn_remove(temp, UIO_SYSSPACE, RMFILE);
OpenPOWER on IntegriCloud