X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=options.c;h=627029cd732ccba701079e3ec1d7f6d5c3a35b15;hp=7f663bb8ffbe880c2e67bc0c8c021e1f8a52e784;hb=949ae6dce35c81348cfb15f77c9d0a6785fe4053;hpb=6d428bcd303e466403cebdedf20a5cf84f6949cd diff --git a/options.c b/options.c index 7f663bb8..627029cd 100644 --- a/options.c +++ b/options.c @@ -204,7 +204,8 @@ static int str_bssplit_cb(void *data, const char *input) ret = bssplit_ddir(&td->o, DDIR_TRIM, op); free(op); } - ret = bssplit_ddir(&td->o, DDIR_READ, str); + if (!ret) + ret = bssplit_ddir(&td->o, DDIR_READ, str); } free(p); @@ -529,8 +530,22 @@ static int str_verify_cpus_allowed_cb(void *data, const char *input) { struct thread_data *td = data; + if (parse_dryrun()) + return 0; + return set_cpus_allowed(td, &td->o.verify_cpumask, input); } + +static int str_log_cpus_allowed_cb(void *data, const char *input) +{ + struct thread_data *td = data; + + if (parse_dryrun()) + return 0; + + return set_cpus_allowed(td, &td->o.log_gz_cpumask, input); +} + #endif #ifdef CONFIG_LIBNUMA @@ -2857,16 +2872,26 @@ struct fio_option fio_options[FIO_MAX_OPTS] = { .group = FIO_OPT_G_RATE, }, { - .name = "rate_poisson", - .lname = "simulate requests under Poisson process", - .type = FIO_OPT_BOOL, - .off1 = td_var_offset(poisson_rate), - .help = "With rate limit, simulate requests that follow Poisson process", - .def = "0", - .parent = "rate", - .hide = 1, + .name = "rate_process", + .lname = "Rate Process", + .type = FIO_OPT_STR, + .off1 = td_var_offset(rate_process), + .help = "What process controls how rated IO is managed", + .def = "linear", .category = FIO_OPT_C_IO, .group = FIO_OPT_G_RATE, + .posval = { + { .ival = "linear", + .oval = RATE_PROCESS_LINEAR, + .help = "Linear rate of IO", + }, + { + .ival = "poisson", + .oval = RATE_PROCESS_POISSON, + .help = "Rate follows Poisson process", + }, + }, + .parent = "rate", }, { .name = "rate_cycle", @@ -3215,6 +3240,19 @@ struct fio_option fio_options[FIO_MAX_OPTS] = { .category = FIO_OPT_C_LOG, .group = FIO_OPT_G_INVALID, }, +#ifdef FIO_HAVE_CPU_AFFINITY + { + .name = "log_compression_cpus", + .lname = "Log Compression CPUs", + .type = FIO_OPT_STR, + .cb = str_log_cpus_allowed_cb, + .off1 = td_var_offset(log_gz_cpumask), + .parent = "log_compression", + .help = "Limit log compression to these CPUs", + .category = FIO_OPT_C_LOG, + .group = FIO_OPT_G_INVALID, + }, +#endif { .name = "log_store_compressed", .lname = "Log store compressed",