diff options
author | mm <mm@FreeBSD.org> | 2013-03-19 22:27:15 +0000 |
---|---|---|
committer | mm <mm@FreeBSD.org> | 2013-03-19 22:27:15 +0000 |
commit | 18a8e19d913846ad35de8779b4d4c1bfb73e911a (patch) | |
tree | 2e8ea0fd6f8ae3cb52acff7505f63d462533d097 | |
parent | e3be864a3f6e9be93a76b0a36ba9596d73ce6f61 (diff) | |
download | FreeBSD-src-18a8e19d913846ad35de8779b4d4c1bfb73e911a.zip FreeBSD-src-18a8e19d913846ad35de8779b4d4c1bfb73e911a.tar.gz |
Run zvol_create_minors() only if in non-error case
-rw-r--r-- | sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c index d224326..1a6a060 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c @@ -1289,10 +1289,12 @@ dsl_dataset_snapshot(nvlist_t *snaps, nvlist_t *props, nvlist_t *errors) #ifdef __FreeBSD__ #ifdef _KERNEL - for (pair = nvlist_next_nvpair(snaps, NULL); pair != NULL; - pair = nvlist_next_nvpair(snaps, pair)) { - char *snapname = nvpair_name(pair); - zvol_create_minors(snapname); + if (error == 0) { + for (pair = nvlist_next_nvpair(snaps, NULL); pair != NULL; + pair = nvlist_next_nvpair(snaps, pair)) { + char *snapname = nvpair_name(pair); + zvol_create_minors(snapname); + } } #endif #endif |