Print this page
3740 Poor ZFS send / receive performance due to snapshot hold / release processing
Submitted by: Steven Hartland <steven.hartland@multiplay.co.uk>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>

@@ -19,10 +19,11 @@
  * CDDL HEADER END
  */
 
 /*
  * Copyright (c) 2012 by Delphix. All rights reserved.
+ * Copyright (c) 2013 Steven Hartland. All rights reserved.
  */
 
 /*
  * zhack is a debugging tool that can write changes to ZFS pool using libzpool
  * for testing purposes. Altering pools with zhack is unsupported and may

@@ -151,11 +152,11 @@
         if ((sepp = strpbrk(g_pool, "/@")) != NULL)
                 *sepp = '\0';
         g_importargs.poolname = g_pool;
         pools = zpool_search_import(g_zfs, &g_importargs);
 
-        if (pools == NULL || nvlist_next_nvpair(pools, NULL) == NULL) {
+        if (nvlist_empty(pools)) {
                 if (!g_importargs.can_be_active) {
                         g_importargs.can_be_active = B_TRUE;
                         if (zpool_search_import(g_zfs, &g_importargs) != NULL ||
                             spa_open(target, &spa, FTAG) == 0) {
                                 fatal("cannot import '%s': pool is active; run "