Author: mav
Date: Mon Apr 16 04:16:10 2018
New Revision: 332553
URL: https://svnweb.freebsd.org/changeset/base/332553

Log:
  MFC r331713: MFV r331712:
  9280 Assertion failure while running removal_with_ganging test with 4K devices
  
  illumos/illumos-gate@243952c7eeef020886e3e2e3df99a513df40584a
  
  Reviewed by: George Wilson <george.wil...@delphix.com>
  Reviewed by: John Kennedy <john.kenn...@delphix.com>
  Approved by: Garrett D'Amore <garr...@damore.org>
  Author: Matt Ahrens <matt.ahr...@delphix.com>

Modified:
  stable/11/cddl/contrib/opensolaris/cmd/ztest/ztest.c
  stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/cddl/contrib/opensolaris/cmd/ztest/ztest.c
==============================================================================
--- stable/11/cddl/contrib/opensolaris/cmd/ztest/ztest.c        Mon Apr 16 
04:15:25 2018        (r332552)
+++ stable/11/cddl/contrib/opensolaris/cmd/ztest/ztest.c        Mon Apr 16 
04:16:10 2018        (r332553)
@@ -164,7 +164,7 @@ typedef struct ztest_shared_opts {
        int zo_init;
        uint64_t zo_time;
        uint64_t zo_maxloops;
-       uint64_t zo_metaslab_gang_bang;
+       uint64_t zo_metaslab_force_ganging;
 } ztest_shared_opts_t;
 
 static const ztest_shared_opts_t ztest_opts_defaults = {
@@ -186,10 +186,10 @@ static const ztest_shared_opts_t ztest_opts_defaults =
        .zo_init = 1,
        .zo_time = 300,                 /* 5 minutes */
        .zo_maxloops = 50,              /* max loops during spa_freeze() */
-       .zo_metaslab_gang_bang = 32 << 10
+       .zo_metaslab_force_ganging = 32 << 10
 };
 
-extern uint64_t metaslab_gang_bang;
+extern uint64_t metaslab_force_ganging;
 extern uint64_t metaslab_df_alloc_threshold;
 extern uint64_t zfs_deadman_synctime_ms;
 extern int metaslab_preload_limit;
@@ -567,12 +567,12 @@ usage(boolean_t requested)
        const ztest_shared_opts_t *zo = &ztest_opts_defaults;
 
        char nice_vdev_size[NN_NUMBUF_SZ];
-       char nice_gang_bang[NN_NUMBUF_SZ];
+       char nice_force_ganging[NN_NUMBUF_SZ];
        FILE *fp = requested ? stdout : stderr;
 
        nicenum(zo->zo_vdev_size, nice_vdev_size, sizeof (nice_vdev_size));
-       nicenum(zo->zo_metaslab_gang_bang, nice_gang_bang,
-           sizeof (nice_gang_bang));
+       nicenum(zo->zo_metaslab_force_ganging, nice_force_ganging,
+           sizeof (nice_force_ganging));
 
        (void) fprintf(fp, "Usage: %s\n"
            "\t[-v vdevs (default: %llu)]\n"
@@ -607,7 +607,7 @@ usage(boolean_t requested)
            zo->zo_raidz_parity,                        /* -R */
            zo->zo_datasets,                            /* -d */
            zo->zo_threads,                             /* -t */
-           nice_gang_bang,                             /* -g */
+           nice_force_ganging,                         /* -g */
            zo->zo_init,                                /* -i */
            (u_longlong_t)zo->zo_killrate,              /* -k */
            zo->zo_pool,                                /* -p */
@@ -676,8 +676,8 @@ process_options(int argc, char **argv)
                        zo->zo_threads = MAX(1, value);
                        break;
                case 'g':
-                       zo->zo_metaslab_gang_bang = MAX(SPA_MINBLOCKSIZE << 1,
-                           value);
+                       zo->zo_metaslab_force_ganging =
+                           MAX(SPA_MINBLOCKSIZE << 1, value);
                        break;
                case 'i':
                        zo->zo_init = value;
@@ -6425,7 +6425,7 @@ main(int argc, char **argv)
        zs = ztest_shared;
 
        if (fd_data_str) {
-               metaslab_gang_bang = ztest_opts.zo_metaslab_gang_bang;
+               metaslab_force_ganging = ztest_opts.zo_metaslab_force_ganging;
                metaslab_df_alloc_threshold =
                    zs->zs_metaslab_df_alloc_threshold;
 

Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c
==============================================================================
--- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c Mon Apr 
16 04:15:25 2018        (r332552)
+++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c Mon Apr 
16 04:16:10 2018        (r332553)
@@ -44,9 +44,9 @@ SYSCTL_NODE(_vfs_zfs, OID_AUTO, metaslab, CTLFLAG_RW, 
        ((flags) & (METASLAB_GANG_CHILD | METASLAB_GANG_HEADER))
 
 uint64_t metaslab_aliquot = 512ULL << 10;
-uint64_t metaslab_gang_bang = SPA_MAXBLOCKSIZE + 1;    /* force gang blocks */
-SYSCTL_QUAD(_vfs_zfs_metaslab, OID_AUTO, gang_bang, CTLFLAG_RWTUN,
-    &metaslab_gang_bang, 0,
+uint64_t metaslab_force_ganging = SPA_MAXBLOCKSIZE + 1;        /* force gang 
blocks */
+SYSCTL_QUAD(_vfs_zfs_metaslab, OID_AUTO, force_ganging, CTLFLAG_RWTUN,
+    &metaslab_force_ganging, 0,
     "Force gang block allocation for blocks larger than or equal to this 
value");
 
 /*
@@ -3172,7 +3172,7 @@ metaslab_alloc_dva(spa_t *spa, metaslab_class_t *mc, u
        /*
         * For testing, make some blocks above a certain size be gang blocks.
         */
-       if (psize >= metaslab_gang_bang && (ddi_get_lbolt() & 3) == 0) {
+       if (psize >= metaslab_force_ganging && (ddi_get_lbolt() & 3) == 0) {
                metaslab_trace_add(zal, NULL, NULL, psize, d, TRACE_FORCE_GANG);
                return (SET_ERROR(ENOSPC));
        }
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to