]> granicus.if.org Git - zfs/commitdiff
Merge commit 'refs/top-bases/gcc-missing-braces' into gcc-missing-braces
authorBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 28 May 2010 21:46:39 +0000 (14:46 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 28 May 2010 21:46:39 +0000 (14:46 -0700)
Conflicts:
cmd/zdb/zdb.c
cmd/ztest/ztest.c
lib/libzfs/libzfs_dataset.c
lib/libzfs/libzfs_pool.c
lib/libzfs/libzfs_sendrecv.c

1  2 
cmd/zdb/zdb.c
lib/libzfs/libzfs_config.c
lib/libzfs/libzfs_dataset.c
lib/libzfs/libzfs_import.c
lib/libzfs/libzfs_pool.c
lib/libzfs/libzfs_sendrecv.c
module/zfs/dsl_dataset.c

diff --cc cmd/zdb/zdb.c
index ee4a43e8f04d85dcf5cfe754953690880d66305c,ff73072f8a64f5622c23cb5b2b3c625af3b9e9b4..f6d9f606de8a21799246ccf8dbf9705e0019f4e4
@@@ -1624,23 -2158,18 +2158,18 @@@ count_block_cb(void *arg, const blkptr_
  static int
  dump_block_stats(spa_t *spa)
  {
 -      zdb_cb_t zcb = { 0 };
 +      zdb_cb_t zcb;
        zdb_blkstats_t *zb, *tzb;
-       uint64_t alloc, space, logalloc;
-       vdev_t *rvd = spa->spa_root_vdev;
+       uint64_t norm_alloc, norm_space, total_alloc, total_found;
+       int flags = TRAVERSE_PRE | TRAVERSE_PREFETCH_METADATA | TRAVERSE_HARD;
        int leaks = 0;
-       int c, e;
  
-       bzero(&zcb, sizeof(zdb_cb_t));
-       if (!dump_opt['S']) {
-               (void) printf("\nTraversing all blocks %s%s%s%s%s...\n",
-                   (dump_opt['c'] || !dump_opt['L']) ? "to verify " : "",
-                   (dump_opt['c'] == 1) ? "metadata " : "",
-                   dump_opt['c'] ? "checksums " : "",
-                   (dump_opt['c'] && !dump_opt['L']) ? "and verify " : "",
-                   !dump_opt['L'] ? "nothing leaked " : "");
-       }
+       (void) printf("\nTraversing all blocks %s%s%s%s%s...\n",
+           (dump_opt['c'] || !dump_opt['L']) ? "to verify " : "",
+           (dump_opt['c'] == 1) ? "metadata " : "",
+           dump_opt['c'] ? "checksums " : "",
+           (dump_opt['c'] && !dump_opt['L']) ? "and verify " : "",
+           !dump_opt['L'] ? "nothing leaked " : "");
  
        /*
         * Load all space maps as SM_ALLOC maps, then traverse the pool
Simple merge
index c5dffbc655c33264b8a3879b88f412ecff0da2a1,a3f5a7d0fc6d702f34d32d06286d885ffefd30a3..07a0dd78b69bbca0437706adb0cd687af0e5a3e6
@@@ -1388,12 -1421,13 +1421,13 @@@ error
  }
  
  /*
-  * Given a property, inherit the value from the parent dataset.
+  * Given a property, inherit the value from the parent dataset, or if received
+  * is TRUE, revert to the received value, if any.
   */
  int
- zfs_prop_inherit(zfs_handle_t *zhp, const char *propname)
+ zfs_prop_inherit(zfs_handle_t *zhp, const char *propname, boolean_t received)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        int ret;
        prop_changelist_t *cl;
        libzfs_handle_t *hdl = zhp->zfs_hdl;
  zfs_promote(zfs_handle_t *zhp)
  {
        libzfs_handle_t *hdl = zhp->zfs_hdl;
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        char parent[MAXPATHLEN];
-       char *cp;
        int ret;
-       zfs_handle_t *pzhp;
-       promote_data_t pd;
        char errbuf[1024];
  
        (void) snprintf(errbuf, sizeof (errbuf), dgettext(TEXT_DOMAIN,
@@@ -4097,9 -3898,9 +3898,9 @@@ zfs_userspace(zfs_handle_t *zhp, zfs_us
  
  int
  zfs_hold(zfs_handle_t *zhp, const char *snapname, const char *tag,
-     boolean_t recursive)
+     boolean_t recursive, boolean_t temphold, boolean_t enoent_ok)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        libzfs_handle_t *hdl = zhp->zfs_hdl;
  
        (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name));
Simple merge
index 9877a2985daa10ef578a678b6d56870e146ccff2,7836e587354c0526ab6e4ac698dc087f8086702e..5c7cf8ccbbb10eeedd2a66f645b51b1785e2488c
@@@ -1164,12 -1165,9 +1165,9 @@@ zpool_add(zpool_handle_t *zhp, nvlist_
  int
  zpool_export_common(zpool_handle_t *zhp, boolean_t force, boolean_t hardforce)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        char msg[1024];
  
-       if (zpool_remove_zvol_links(zhp) != 0)
-               return (-1);
        (void) snprintf(msg, sizeof (msg), dgettext(TEXT_DOMAIN,
            "cannot export '%s'"), zhp->zpool_name);
  
  zpool_import_props(libzfs_handle_t *hdl, nvlist_t *config, const char *newname,
      nvlist_t *props, boolean_t importfaulted)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
+       zpool_rewind_policy_t policy;
+       nvlist_t *nvi = NULL;
        char *thename;
        char *origname;
+       uint64_t returned_size;
        int ret;
        char errbuf[1024];
  
  }
  
  /*
-  * Scrub the pool.
+  * Scan the pool.
   */
  int
- zpool_scrub(zpool_handle_t *zhp, pool_scrub_type_t type)
+ zpool_scan(zpool_handle_t *zhp, pool_scan_func_t func)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        char msg[1024];
        libzfs_handle_t *hdl = zhp->zpool_hdl;
  
@@@ -1910,9 -2189,9 +2189,9 @@@ zpool_vdev_offline(zpool_handle_t *zhp
   * Mark the given vdev faulted.
   */
  int
- zpool_vdev_fault(zpool_handle_t *zhp, uint64_t guid)
+ zpool_vdev_fault(zpool_handle_t *zhp, uint64_t guid, vdev_aux_t aux)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        char msg[1024];
        libzfs_handle_t *hdl = zhp->zpool_hdl;
  
   * Mark the given vdev degraded.
   */
  int
- zpool_vdev_degrade(zpool_handle_t *zhp, uint64_t guid)
+ zpool_vdev_degrade(zpool_handle_t *zhp, uint64_t guid, vdev_aux_t aux)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        char msg[1024];
        libzfs_handle_t *hdl = zhp->zpool_hdl;
  
  int
  zpool_vdev_remove(zpool_handle_t *zhp, const char *path)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        char msg[1024];
        nvlist_t *tgt;
-       boolean_t avail_spare, l2cache;
+       boolean_t avail_spare, l2cache, islog;
        libzfs_handle_t *hdl = zhp->zpool_hdl;
+       uint64_t version;
  
        (void) snprintf(msg, sizeof (msg),
            dgettext(TEXT_DOMAIN, "cannot remove %s"), path);
   * Clear the errors for the pool, or the particular device if specified.
   */
  int
- zpool_clear(zpool_handle_t *zhp, const char *path)
+ zpool_clear(zpool_handle_t *zhp, const char *path, nvlist_t *rewindnvl)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        char msg[1024];
        nvlist_t *tgt;
+       zpool_rewind_policy_t policy;
        boolean_t avail_spare, l2cache;
        libzfs_handle_t *hdl = zhp->zpool_hdl;
+       nvlist_t *nvi = NULL;
  
        if (path)
                (void) snprintf(msg, sizeof (msg),
index 04a5c8955a413cb27cb2544d6d4a0f6d092b4c5d,672e004ef5cd9086e76d8d6b64c4d5cc45eabd68..8e9297c9e22f5538d4b025edae999499c7762fc7
@@@ -461,10 -861,11 +861,11 @@@ typedef struct send_dump_data 
   */
  static int
  dump_ioctl(zfs_handle_t *zhp, const char *fromsnap, boolean_t fromorigin,
-     int outfd)
+     int outfd, boolean_t enoent_ok, boolean_t *got_enoent, nvlist_t *debugnv)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        libzfs_handle_t *hdl = zhp->zfs_hdl;
+       nvlist_t *thisdbg;
  
        assert(zhp->zfs_type == ZFS_TYPE_SNAPSHOT);
        assert(fromsnap == NULL || fromsnap[0] == '\0' || !fromorigin);
@@@ -738,11 -1256,20 +1256,20 @@@ zfs_send(zfs_handle_t *zhp, const char 
                dmu_replay_record_t drr = { 0 };
                char *packbuf = NULL;
                size_t buflen = 0;
 -              zio_cksum_t zc = { 0 };
 +              zio_cksum_t zc = { { 0 } };
  
-               assert(fromsnap || doall);
+               if (holdsnaps) {
+                       (void) snprintf(holdtag, sizeof (holdtag),
+                           ".send-%d-%llu", getpid(), (u_longlong_t)holdseq);
+                       ++holdseq;
+                       err = zfs_hold_range(zhp, fromsnap, tosnap,
+                           holdtag, flags.replicate, B_TRUE, filter_func,
+                           cb_arg);
+                       if (err)
+                               goto err_out;
+               }
  
-               if (replicate) {
+               if (flags.replicate || flags.props) {
                        nvlist_t *hdrnv;
  
                        VERIFY(0 == nvlist_alloc(&hdrnv, NV_UNIQUE_NAME, 0));
@@@ -1271,9 -1854,9 +1854,9 @@@ again
                        if (0 == nvlist_lookup_nvlist(stream_nvfs, "snapprops",
                            &props) && 0 == nvlist_lookup_nvlist(props,
                            stream_snapname, &props)) {
 -                              zfs_cmd_t zc = { 0 };
 +                              zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
  
-                               zc.zc_cookie = B_TRUE; /* clear current props */
+                               zc.zc_cookie = B_TRUE; /* received */
                                (void) snprintf(zc.zc_name, sizeof (zc.zc_name),
                                    "%s@%s", fsname, nvpair_name(snapelem));
                                if (zcmd_write_src_nvlist(hdl, &zc,
@@@ -1594,12 -2280,12 +2280,12 @@@ recv_skip(libzfs_handle_t *hdl, int fd
  static int
  zfs_receive_one(libzfs_handle_t *hdl, int infd, const char *tosnap,
      recvflags_t flags, dmu_replay_record_t *drr,
-     dmu_replay_record_t *drr_noswap, avl_tree_t *stream_avl,
-     char **top_zfs)
+     dmu_replay_record_t *drr_noswap, const char *sendfs,
+     nvlist_t *stream_nv, avl_tree_t *stream_avl, char **top_zfs)
  {
 -      zfs_cmd_t zc = { 0 };
 +      zfs_cmd_t zc = { "\0", "\0", "\0", 0 };
        time_t begin_time;
-       int ioctl_err, ioctl_errno, err, choplen;
+       int ioctl_err, ioctl_errno, err;
        char *cp;
        struct drr_begin *drrb = &drr->drr_u.drr_begin;
        char errbuf[1024];
        zcmd_free_nvlists(&zc);
  
        if (err == 0 && snapprops_nvlist) {
 -              zfs_cmd_t zc2 = { 0 };
 +              zfs_cmd_t zc2 = { "\0", "\0", "\0", 0 };
  
                (void) strcpy(zc2.zc_name, zc.zc_value);
+               zc2.zc_cookie = B_TRUE; /* received */
                if (zcmd_write_src_nvlist(hdl, &zc2, snapprops_nvlist) == 0) {
                        (void) zfs_ioctl(hdl, ZFS_IOC_SET_PROP, &zc2);
                        zcmd_free_nvlists(&zc2);
@@@ -2034,7 -2822,9 +2822,9 @@@ zfs_receive_impl(libzfs_handle_t *hdl, 
        dmu_replay_record_t drr, drr_noswap;
        struct drr_begin *drrb = &drr.drr_u.drr_begin;
        char errbuf[1024];
 -      zio_cksum_t zcksum = { 0 };
 +      zio_cksum_t zcksum = { { 0 } };
+       uint64_t featureflags;
+       int hdrtype;
  
        (void) snprintf(errbuf, sizeof (errbuf), dgettext(TEXT_DOMAIN,
            "cannot receive"));
Simple merge