* Find and display the p-th percentile of clat
*/
static void show_clat_percentiles(unsigned int *io_u_plat, unsigned long nr,
- fio_fp64_t *plist, uint64_t precision)
+ fio_fp64_t *plist, unsigned int precision)
{
unsigned int len, j = 0, minv, maxv;
unsigned int *ovals;
log_info(" clat percentiles (usec):\n |");
}
- snprintf(fmt, sizeof(fmt), "%%1.%luf", precision);
+ snprintf(fmt, sizeof(fmt), "%%1.%uf", precision);
per_line = (80 - 7) / (precision + 14);
for (j = 0; j < len; j++) {
if (ovals)
free(ovals);
- if (!calc_lat(&ts->bw_stat[ddir], &min, &max, &mean, &dev)) {
+ if (calc_lat(&ts->bw_stat[ddir], &min, &max, &mean, &dev)) {
if (rs->agg[ddir]) {
p_of_agg = mean * 100 / (double) rs->agg[ddir];
if (p_of_agg > 100.0)
if (is_backend)
fio_server_send_du();
- else if (output_format == FIO_OUTPUT_NORMAL)
+ else if (output_format == FIO_OUTPUT_NORMAL) {
show_disk_util(0, NULL);
-
- show_idle_prof_stats(FIO_OUTPUT_NORMAL, NULL);
+ show_idle_prof_stats(FIO_OUTPUT_NORMAL, NULL);
+ }
free(runstats);
free(threadstats);
if (td_trim(td) && td->io_bytes[DDIR_TRIM])
td->ts.runtime[DDIR_TRIM] += rt[i];
- update_rusage_stat(td);
+ td->update_rusage = 1;
td->ts.io_bytes[DDIR_READ] = td->io_bytes[DDIR_READ];
td->ts.io_bytes[DDIR_WRITE] = td->io_bytes[DDIR_WRITE];
td->ts.io_bytes[DDIR_TRIM] = td->io_bytes[DDIR_TRIM];
td->ts.total_run_time = mtime_since(&td->epoch, &tv);
}
+ for_each_td(td, i) {
+ if (td->rusage_sem) {
+ td->update_rusage = 1;
+ fio_mutex_down(td->rusage_sem);
+ }
+ td->update_rusage = 0;
+ }
+
show_run_stats();
for_each_td(td, i) {