X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=stat.c;h=552d88dde06797c9098820da224cd0891aab268e;hp=ef9fe7d43cade18c4047fc58cdf24efe6bc7a103;hb=3aea75b14510301a80744b417ac08840ccfcf5b3;hpb=93168285bc564941d832deea172dc1f68de68666 diff --git a/stat.c b/stat.c index ef9fe7d4..552d88dd 100644 --- a/stat.c +++ b/stat.c @@ -257,13 +257,13 @@ out: free(ovals); } -int calc_lat(struct io_stat *is, unsigned long *min, unsigned long *max, - double *mean, double *dev) +bool calc_lat(struct io_stat *is, unsigned long *min, unsigned long *max, + double *mean, double *dev) { double n = (double) is->samples; if (n == 0) - return 0; + return false; *min = is->min_val; *max = is->max_val; @@ -274,7 +274,7 @@ int calc_lat(struct io_stat *is, unsigned long *min, unsigned long *max, else *dev = 0; - return 1; + return true; } void show_group_stats(struct group_run_stats *rs, struct buf_output *out) @@ -364,7 +364,7 @@ static void display_lat(const char *name, unsigned long min, unsigned long max, const char *base = "(usec)"; char *minp, *maxp; - if (!usec_to_msec(&min, &max, &mean, &dev)) + if (usec_to_msec(&min, &max, &mean, &dev)) base = "(msec)"; minp = num2str(min, 6, 1, 0, 0); @@ -1090,8 +1090,8 @@ static void show_thread_status_terse_v3_v4(struct thread_stat *ts, log_buf(out, "\n"); } -void json_add_job_opts(struct json_object *root, const char *name, - struct flist_head *opt_list, bool num_jobs) +static void json_add_job_opts(struct json_object *root, const char *name, + struct flist_head *opt_list, bool num_jobs) { struct json_object *dir_object; struct flist_head *entry; @@ -2020,7 +2020,7 @@ static void __add_log_sample(struct io_log *iolog, unsigned long val, s = get_sample(iolog, cur_log, cur_log->nr_samples); s->val = val; - s->time = t; + s->time = t + iolog->td->unix_epoch; io_sample_set_ddir(iolog, s, ddir); s->bs = bs; @@ -2221,7 +2221,7 @@ void add_clat_sample(struct thread_data *td, enum fio_ddir ddir, if (this_window >= iolog->hist_msec) { unsigned int *io_u_plat; - unsigned int *dst; + struct io_u_plat_entry *dst; /* * Make a byte-for-byte copy of the latency histogram @@ -2231,10 +2231,11 @@ void add_clat_sample(struct thread_data *td, enum fio_ddir ddir, * log file. */ io_u_plat = (unsigned int *) td->ts.io_u_plat[ddir]; - dst = malloc(FIO_IO_U_PLAT_NR * sizeof(unsigned int)); - memcpy(dst, io_u_plat, + dst = malloc(sizeof(struct io_u_plat_entry)); + memcpy(&(dst->io_u_plat), io_u_plat, FIO_IO_U_PLAT_NR * sizeof(unsigned int)); - __add_log_sample(iolog, (unsigned long )dst, ddir, bs, + flist_add(&dst->list, &hw->list); + __add_log_sample(iolog, (unsigned long)dst, ddir, bs, elapsed, offset); /*