Merge branch 'master' into gfio
[fio.git] / options.c
index 8a8f24cb1ea29c246db248357c3a216f555bb7be..f5cab6558c8d636411f4055370019d47dedb619b 100644 (file)
--- a/options.c
+++ b/options.c
@@ -936,38 +936,6 @@ static int gtod_cpu_verify(struct fio_option *o, void *data)
        return 0;
 }
 
-static int kb_base_verify(struct fio_option *o, void *data)
-{
-       struct thread_data *td = data;
-
-       if (td->o.kb_base != 1024 && td->o.kb_base != 1000) {
-               log_err("fio: kb_base set to nonsensical value: %u\n",
-                               td->o.kb_base);
-               return 1;
-       }
-
-       return 0;
-}
-
-static int unit_base_verify(struct fio_option *o, void *data)
-{
-       struct thread_data *td = data;
-
-       /* 0 = default, pick based on engine
-        * 1 = use bits
-        * 8 = use bytes
-        */
-       if (td->o.unit_base != 0 &&
-               td->o.unit_base != 1 &&
-               td->o.unit_base != 8) {
-               log_err("fio: unit_base set to nonsensical value: %u\n",
-                               td->o.unit_base);
-               return 1;
-       }
-
-       return 0;
-}
-
 /*
  * Option grouping
  */
@@ -2372,7 +2340,7 @@ struct fio_option fio_options[FIO_MAX_OPTS] = {
                .lname  = "Lock memory",
                .type   = FIO_OPT_STR_VAL,
                .off1   = td_var_offset(lockmem),
-               .help   = "Lock down this amount of memory",
+               .help   = "Lock down this amount of memory (per worker)",
                .def    = "0",
                .interval = 1024 * 1024,
                .category = FIO_OPT_C_GENERAL,
@@ -2649,12 +2617,16 @@ struct fio_option fio_options[FIO_MAX_OPTS] = {
                .type   = FIO_OPT_STR,
                .cb     = str_numa_cpunodes_cb,
                .help   = "NUMA CPU nodes bind",
+               .category = FIO_OPT_C_GENERAL,
+               .group  = FIO_OPT_G_INVALID,
        },
        {
                .name   = "numa_mem_policy",
                .type   = FIO_OPT_STR,
                .cb     = str_numa_mpol_cb,
                .help   = "NUMA memory policy setup",
+               .category = FIO_OPT_C_GENERAL,
+               .group  = FIO_OPT_G_INVALID,
        },
 #endif
        {
@@ -3091,20 +3063,42 @@ struct fio_option fio_options[FIO_MAX_OPTS] = {
                .lname  = "KB Base",
                .type   = FIO_OPT_INT,
                .off1   = td_var_offset(kb_base),
-               .verify = kb_base_verify,
                .prio   = 1,
                .def    = "1024",
+               .posval = {
+                         { .ival = "1024",
+                           .oval = 1024,
+                           .help = "Use 1024 as the K base",
+                         },
+                         { .ival = "1000",
+                           .oval = 1000,
+                           .help = "Use 1000 as the K base",
+                         },
+               },
                .help   = "How many bytes per KB for reporting (1000 or 1024)",
                .category = FIO_OPT_C_GENERAL,
                .group  = FIO_OPT_G_INVALID,
        },
        {
                .name   = "unit_base",
+               .lname  = "Base unit for reporting (Bits or Bytes)",
                .type   = FIO_OPT_INT,
                .off1   = td_var_offset(unit_base),
-               .verify = unit_base_verify,
                .prio   = 1,
-               .def    = "0",
+               .posval = {
+                         { .ival = "0",
+                           .oval = 0,
+                           .help = "Auto-detect",
+                         },
+                         { .ival = "8",
+                           .oval = 8,
+                           .help = "Normal (byte based)",
+                         },
+                         { .ival = "1",
+                           .oval = 1,
+                           .help = "Bit based",
+                         },
+               },
                .help   = "Bit multiple of result summary data (8 for byte, 1 for bit)",
                .category = FIO_OPT_C_GENERAL,
                .group  = FIO_OPT_G_INVALID,