From c6fd73aef3b5f165501d5c8b95eb1d5a6837e4a5 Mon Sep 17 00:00:00 2001 From: Chris Kirby Date: Wed, 17 Feb 2010 11:41:36 -0700 Subject: 6885979 zfs_send -R fails to send snapshots that get renamed during the operation 6926290 zfs_hold_range() should handle fromsnap == NULL 6926291 In zfs_send(), errno can get clobbered before we use it --- usr/src/lib/libzfs/common/libzfs_dataset.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'usr/src/lib/libzfs/common/libzfs_dataset.c') diff --git a/usr/src/lib/libzfs/common/libzfs_dataset.c b/usr/src/lib/libzfs/common/libzfs_dataset.c index 0f131a949f..bd63372301 100644 --- a/usr/src/lib/libzfs/common/libzfs_dataset.c +++ b/usr/src/lib/libzfs/common/libzfs_dataset.c @@ -4078,6 +4078,7 @@ zfs_hold_range(zfs_handle_t *zhp, const char *fromsnap, const char *tosnap, arg.temphold = temphold; arg.holding = B_TRUE; arg.recursive = recursive; + arg.seenfrom = (fromsnap == NULL); error = zfs_iter_snapshots_sorted(zhp, zfs_hold_range_one, &arg); @@ -4147,6 +4148,7 @@ zfs_release_range(zfs_handle_t *zhp, const char *fromsnap, const char *tosnap, arg.tosnap = tosnap; arg.tag = tag; arg.recursive = recursive; + arg.seenfrom = (fromsnap == NULL); return (zfs_iter_snapshots_sorted(zhp, zfs_hold_range_one, &arg)); } -- cgit v1.2.3