Author: delphij
Date: Wed Jul  9 08:23:22 2014
New Revision: 268455
URL: http://svnweb.freebsd.org/changeset/base/268455

Log:
  4951 ZFS administrative commands should use reserved space, not fail with 
ENOSPC
  Reviewed by: John Kennedy <john.kenn...@delphix.com>
  Reviewed by: George Wilson <george.wil...@delphix.com>
  Reviewed by: Christopher Siden <christopher.si...@delphix.com>
  Reviewed by: Dan McDonald <dan...@omniti.com>
  Approved by: Garrett D'Amore <garr...@damore.org>
  
  illumos/illumos-gate@7d46dc6ca63a6f3f0d51aa655bfcf10cf2405a9e

Modified:
  vendor/illumos/dist/cmd/zfs/zfs_main.c
  vendor/illumos/dist/cmd/zhack/zhack.c

Changes in other areas also in this revision:
Modified:
  vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_objset.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_send.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_bookmark.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_dataset.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_deleg.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_destroy.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_dir.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_prop.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_scan.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_synctask.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/dsl_userhold.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/spa.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/spa_history.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/spa_misc.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dsl_synctask.h
  vendor-sys/illumos/dist/uts/common/fs/zfs/zfs_ioctl.c
  vendor-sys/illumos/dist/uts/common/fs/zfs/zvol.c

Modified: vendor/illumos/dist/cmd/zfs/zfs_main.c
==============================================================================
--- vendor/illumos/dist/cmd/zfs/zfs_main.c      Wed Jul  9 08:20:08 2014        
(r268454)
+++ vendor/illumos/dist/cmd/zfs/zfs_main.c      Wed Jul  9 08:23:22 2014        
(r268455)
@@ -21,7 +21,7 @@
 
 /*
  * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
- * Copyright (c) 2013 by Delphix. All rights reserved.
+ * Copyright (c) 2011, 2014 by Delphix. All rights reserved.
  * Copyright 2012 Milan Jurik. All rights reserved.
  * Copyright (c) 2012, Joyent, Inc. All rights reserved.
  * Copyright (c) 2013 Steven Hartland.  All rights reserved.
@@ -6708,6 +6708,9 @@ zfs_do_bookmark(int argc, char **argv)
                case ENOTSUP:
                        err_msg = "bookmark feature not enabled";
                        break;
+               case ENOSPC:
+                       err_msg = "out of space";
+                       break;
                default:
                        err_msg = "unknown error";
                        break;
@@ -6716,7 +6719,7 @@ zfs_do_bookmark(int argc, char **argv)
                    dgettext(TEXT_DOMAIN, err_msg));
        }
 
-       return (ret);
+       return (ret != 0);
 
 usage:
        usage(B_FALSE);

Modified: vendor/illumos/dist/cmd/zhack/zhack.c
==============================================================================
--- vendor/illumos/dist/cmd/zhack/zhack.c       Wed Jul  9 08:20:08 2014        
(r268454)
+++ vendor/illumos/dist/cmd/zhack/zhack.c       Wed Jul  9 08:23:22 2014        
(r268455)
@@ -20,7 +20,7 @@
  */
 
 /*
- * Copyright (c) 2013 by Delphix. All rights reserved.
+ * Copyright (c) 2011, 2014 by Delphix. All rights reserved.
  * Copyright (c) 2013 Steven Hartland. All rights reserved.
  */
 
@@ -362,7 +362,7 @@ zhack_do_feature_enable(int argc, char *
                    feature.fi_guid);
 
        VERIFY0(dsl_sync_task(spa_name(spa), NULL,
-           zhack_feature_enable_sync, &feature, 5));
+           zhack_feature_enable_sync, &feature, 5, ZFS_SPACE_CHECK_NORMAL));
 
        spa_close(spa, FTAG);
 
@@ -473,7 +473,8 @@ zhack_do_feature_ref(int argc, char **ar
        }
 
        VERIFY0(dsl_sync_task(spa_name(spa), NULL,
-           decr ? feature_decr_sync : feature_incr_sync, &feature, 5));
+           decr ? feature_decr_sync : feature_incr_sync, &feature,
+           5, ZFS_SPACE_CHECK_NORMAL));
 
        spa_close(spa, FTAG);
 }
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to