X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=init.c;h=b5315334c6ba9f6edc8aad0d477c25f7eff4ceaa;hb=d2efd366d6010b3674af6fc248a6090ab45cb62b;hp=63f2168eabcbbebb8cf6c2ae96967b46f2114713;hpb=36833fb04b5f9a734e96a571dfb52fc54b5b95e7;p=fio.git diff --git a/init.c b/init.c index 63f2168e..b5315334 100644 --- a/init.c +++ b/init.c @@ -32,6 +32,7 @@ #include "steadystate.h" #include "blktrace.h" +#include "oslib/asprintf.h" #include "oslib/getopt.h" #include "oslib/strcasestr.h" @@ -852,11 +853,6 @@ static int fixup_options(struct thread_data *td) o->unit_base = N2S_BYTEPERSEC; } -#ifndef FIO_HAVE_ANY_FALLOCATE - /* Platform doesn't support any fallocate so force it to none */ - o->fallocate_mode = FIO_FALLOCATE_NONE; -#endif - #ifndef CONFIG_FDATASYNC if (o->fdatasync_blocks) { log_info("fio: this platform does not support fdatasync()" @@ -948,24 +944,12 @@ static int fixup_options(struct thread_data *td) ret |= 1; } - if (fio_option_is_set(o, clat_percentiles) && - !fio_option_is_set(o, lat_percentiles)) { - o->lat_percentiles = !o->clat_percentiles; - } else if (fio_option_is_set(o, lat_percentiles) && - !fio_option_is_set(o, clat_percentiles)) { - o->clat_percentiles = !o->lat_percentiles; - } else if (fio_option_is_set(o, lat_percentiles) && - fio_option_is_set(o, clat_percentiles) && - o->lat_percentiles && o->clat_percentiles) { - log_err("fio: lat_percentiles and clat_percentiles are " - "mutually exclusive\n"); - ret |= 1; - } - if (o->disable_lat) o->lat_percentiles = 0; if (o->disable_clat) o->clat_percentiles = 0; + if (o->disable_slat) + o->slat_percentiles = 0; /* * Fix these up to be nsec internally @@ -1046,6 +1030,7 @@ static void td_fill_rand_seeds_internal(struct thread_data *td, bool use64) init_rand_seed(&td->poisson_state[2], td->rand_seeds[FIO_RAND_POISSON3_OFF], 0); init_rand_seed(&td->dedupe_state, td->rand_seeds[FIO_DEDUPE_OFF], false); init_rand_seed(&td->zone_state, td->rand_seeds[FIO_RAND_ZONE_OFF], false); + init_rand_seed(&td->prio_state, td->rand_seeds[FIO_RAND_PRIO_CMDS], false); if (!td_random(td)) return; @@ -1512,6 +1497,7 @@ static int add_job(struct thread_data *td, const char *jobname, int job_add_num, td->ts.clat_percentiles = o->clat_percentiles; td->ts.lat_percentiles = o->lat_percentiles; + td->ts.slat_percentiles = o->slat_percentiles; td->ts.percentile_precision = o->percentile_precision; memcpy(td->ts.percentile_list, o->percentile_list, sizeof(o->percentile_list)); td->ts.sig_figs = o->sig_figs; @@ -1522,6 +1508,8 @@ static int add_job(struct thread_data *td, const char *jobname, int job_add_num, td->ts.lat_stat[i].min_val = ULONG_MAX; td->ts.bw_stat[i].min_val = ULONG_MAX; td->ts.iops_stat[i].min_val = ULONG_MAX; + td->ts.clat_high_prio_stat[i].min_val = ULONG_MAX; + td->ts.clat_low_prio_stat[i].min_val = ULONG_MAX; } td->ts.sync_stat.min_val = ULONG_MAX; td->ddir_seq_nr = o->ddir_seq_nr;