Date: Tue, 12 Jul 2016 11:56:46 +0000 (UTC) From: Andriy Gapon <avg@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r302656 - vendor/illumos/dist/lib/libzfs/common Message-ID: <201607121156.u6CBukq8004522@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: avg Date: Tue Jul 12 11:56:45 2016 New Revision: 302656 URL: https://svnweb.freebsd.org/changeset/base/302656 Log: 5813 zfs_setprop_error(): Handle errno value E2BIG. illumos/illumos-gate@6fdcb3d1c2baae812d9cbce37b41469b924efd90 https://github.com/illumos/illumos-gate/commit/6fdcb3d1c2baae812d9cbce37b41469b924efd90 https://www.illumos.org/issues/5813 Lets pull in this patch from freebsd: http://svnweb.freebsd.org/base?view=revision&revision=271764 zfs_setprop_error(): Handle errno value E2BIG. This errno value is emitted by dsl_props_set_check() in sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c, and is used to mean that the property value is too long. For the record, the maximum length is ZAP_MAXVALUELEN, which is 8*1024 bytes. Instead of claiming an unknown error (and abort()ing), provide something more specific to the scenario involved. As far as I can tell, E2BIG is not emitted for any other scenario. MFC after: 1 week Sponsored by: Spectra Logic Affects: All ZFS versions starting 27 Feb 2009 (illumos ccba0801) This change modified the value returned by dsl_props_set_check(), so that it can distinguish between a name that's too long and a value that's too long, but libzfs was not updated accordingly. MFSpectraBSD: r1051499 on 2014/03/28 11:07:59 Reviewed by: Paul Dagnelie <paul.dagnelie@delphix.com> Reviewed by: Matthew Ahrens <mahrens@delphix.com> Reviewed by: Prakash Surya <prakash.surya@delphix.com> Reviewed by: Richard Elling <richard.elling@richardelling.com> Approved by: Garrett D'Amore <garrett@damore.org> Author: Will Andrews <will@freebsd.org> Modified: vendor/illumos/dist/lib/libzfs/common/libzfs_dataset.c Modified: vendor/illumos/dist/lib/libzfs/common/libzfs_dataset.c ============================================================================== --- vendor/illumos/dist/lib/libzfs/common/libzfs_dataset.c Tue Jul 12 11:54:25 2016 (r302655) +++ vendor/illumos/dist/lib/libzfs/common/libzfs_dataset.c Tue Jul 12 11:56:45 2016 (r302656) @@ -1463,6 +1463,12 @@ zfs_setprop_error(libzfs_handle_t *hdl, (void) zfs_error(hdl, EZFS_DSREADONLY, errbuf); break; + case E2BIG: + zfs_error_aux(hdl, dgettext(TEXT_DOMAIN, + "property value too long")); + (void) zfs_error(hdl, EZFS_BADPROP, errbuf); + break; + case ENOTSUP: zfs_error_aux(hdl, dgettext(TEXT_DOMAIN, "pool and or dataset must be upgraded to set this "
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201607121156.u6CBukq8004522>