diff options
| author | loli10K <ezomori.nozomu@gmail.com> | 2018-04-30 20:43:03 +0200 |
|---|---|---|
| committer | Prakash Surya <prakash.surya@delphix.com> | 2018-05-15 15:59:46 -0700 |
| commit | 0b2e8253986c5c761129b58cfdac46d204903de1 (patch) | |
| tree | 1a79a021e3f45245ef79ecc5fe001f770e972d89 /usr/src/lib/libzfs | |
| parent | 591e0e133f9980083db5d64ac33a30bcc3382ff7 (diff) | |
| download | illumos-joyent-0b2e8253986c5c761129b58cfdac46d204903de1.tar.gz | |
9512 zfs remap poolname@snapname coredumps
Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: John Wren Kennedy <john.kennedy@delphix.com>
Reviewed by: Sara Hartse <sara.hartse@delphix.com>
Approved by: Matt Ahrens <mahrens@delphix.com>
Diffstat (limited to 'usr/src/lib/libzfs')
| -rw-r--r-- | usr/src/lib/libzfs/common/libzfs_dataset.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/usr/src/lib/libzfs/common/libzfs_dataset.c b/usr/src/lib/libzfs/common/libzfs_dataset.c index 556538a440..f91b9ecf6a 100644 --- a/usr/src/lib/libzfs/common/libzfs_dataset.c +++ b/usr/src/lib/libzfs/common/libzfs_dataset.c @@ -3877,12 +3877,24 @@ zfs_remap_indirects(libzfs_handle_t *hdl, const char *fs) char errbuf[1024]; (void) snprintf(errbuf, sizeof (errbuf), dgettext(TEXT_DOMAIN, - "cannot remap filesystem '%s' "), fs); + "cannot remap dataset '%s'"), fs); err = lzc_remap(fs); if (err != 0) { - (void) zfs_standard_error(hdl, err, errbuf); + switch (err) { + case ENOTSUP: + zfs_error_aux(hdl, dgettext(TEXT_DOMAIN, + "pool must be upgraded")); + (void) zfs_error(hdl, EZFS_BADVERSION, errbuf); + break; + case EINVAL: + (void) zfs_error(hdl, EZFS_BADTYPE, errbuf); + break; + default: + (void) zfs_standard_error(hdl, err, errbuf); + break; + } } return (err); |
