Make json_object_add_value_string() duplicate its 'value' argument
[fio.git] / options.c
index 2372c0426f6841b4cee93d49b9a1341bf15b1a8e..f2d98fa6bb59f4425dfdc7a155e2f55e725351d0 100644 (file)
--- a/options.c
+++ b/options.c
@@ -3360,12 +3360,22 @@ struct fio_option fio_options[FIO_MAX_OPTS] = {
        },
        {
                .name   = "max_open_zones",
-               .lname  = "Maximum number of open zones",
+               .lname  = "Per device/file maximum number of open zones",
                .type   = FIO_OPT_INT,
                .off1   = offsetof(struct thread_options, max_open_zones),
                .maxval = ZBD_MAX_OPEN_ZONES,
-               .help   = "Limit random writes to SMR drives to the specified"
-                         " number of sequential zones",
+               .help   = "Limit on the number of simultaneously opened sequential write zones with zonemode=zbd",
+               .def    = "0",
+               .category = FIO_OPT_C_IO,
+               .group  = FIO_OPT_G_INVALID,
+       },
+       {
+               .name   = "job_max_open_zones",
+               .lname  = "Job maximum number of open zones",
+               .type   = FIO_OPT_INT,
+               .off1   = offsetof(struct thread_options, job_max_open_zones),
+               .maxval = ZBD_MAX_OPEN_ZONES,
+               .help   = "Limit on the number of simultaneously opened sequential write zones with zonemode=zbd by one thread/process",
                .def    = "0",
                .category = FIO_OPT_C_IO,
                .group  = FIO_OPT_G_INVALID,
@@ -3537,7 +3547,7 @@ struct fio_option fio_options[FIO_MAX_OPTS] = {
        {
                .name   = "rate",
                .lname  = "I/O rate",
-               .type   = FIO_OPT_INT,
+               .type   = FIO_OPT_ULL,
                .off1   = offsetof(struct thread_options, rate[DDIR_READ]),
                .off2   = offsetof(struct thread_options, rate[DDIR_WRITE]),
                .off3   = offsetof(struct thread_options, rate[DDIR_TRIM]),
@@ -3549,7 +3559,7 @@ struct fio_option fio_options[FIO_MAX_OPTS] = {
                .name   = "rate_min",
                .alias  = "ratemin",
                .lname  = "I/O min rate",
-               .type   = FIO_OPT_INT,
+               .type   = FIO_OPT_ULL,
                .off1   = offsetof(struct thread_options, ratemin[DDIR_READ]),
                .off2   = offsetof(struct thread_options, ratemin[DDIR_WRITE]),
                .off3   = offsetof(struct thread_options, ratemin[DDIR_TRIM]),
@@ -3672,6 +3682,16 @@ struct fio_option fio_options[FIO_MAX_OPTS] = {
                .category = FIO_OPT_C_IO,
                .group  = FIO_OPT_G_LATPROF,
        },
+       {
+               .name   = "latency_run",
+               .lname  = "Latency Run",
+               .type   = FIO_OPT_BOOL,
+               .off1   = offsetof(struct thread_options, latency_run),
+               .help   = "Keep adjusting queue depth to match latency_target",
+               .def    = "0",
+               .category = FIO_OPT_C_IO,
+               .group  = FIO_OPT_G_LATPROF,
+       },
        {
                .name   = "invalidate",
                .lname  = "Cache invalidate",