aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/libzfs/libzfs_sendrecv.c9
-rw-r--r--lib/libzfs/libzfs_status.c2
2 files changed, 11 insertions, 0 deletions
diff --git a/lib/libzfs/libzfs_sendrecv.c b/lib/libzfs/libzfs_sendrecv.c
index 62a94264494f..1e3a0bf5618a 100644
--- a/lib/libzfs/libzfs_sendrecv.c
+++ b/lib/libzfs/libzfs_sendrecv.c
@@ -321,6 +321,15 @@ send_iterate_snap(zfs_handle_t *zhp, void *arg)
}
if (!sd->recursive) {
+
+ /*
+ * To allow a doall stream to work properly
+ * with a NULL fromsnap
+ */
+ if (sd->doall && sd->fromsnap == NULL && !sd->seenfrom) {
+ sd->seenfrom = B_TRUE;
+ }
+
if (!sd->seenfrom && isfromsnap) {
sd->seenfrom = B_TRUE;
zfs_close(zhp);
diff --git a/lib/libzfs/libzfs_status.c b/lib/libzfs/libzfs_status.c
index fadae9388ac1..5e5cb5f5d440 100644
--- a/lib/libzfs/libzfs_status.c
+++ b/lib/libzfs/libzfs_status.c
@@ -482,6 +482,8 @@ check_status(nvlist_t *config, boolean_t isimport,
return (ZPOOL_STATUS_COMPATIBILITY_ERR);
for (i = 0; i < SPA_FEATURES; i++) {
zfeature_info_t *fi = &spa_feature_table[i];
+ if (!fi->fi_zfs_mod_supported)
+ continue;
if (pool_features[i] &&
!nvlist_exists(feat, fi->fi_guid))
return (ZPOOL_STATUS_FEAT_DISABLED);