X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;ds=sidebyside;f=idletime.h;h=6c1161a7c258d07efb0b41f1be7b9f2ef8d7e53c;hb=5457259f57c651d41f6cb5ee4a7af49ff05a9aed;hp=acb8407d982a1242b47549c7e406a3f294713973;hpb=f2a2ce0eedb44eaa8689e4cbfa77c79b1751b216;p=fio.git diff --git a/idletime.h b/idletime.h index acb8407d..6c1161a7 100644 --- a/idletime.h +++ b/idletime.h @@ -1,7 +1,9 @@ #ifndef FIO_IDLETIME_H #define FIO_IDLETIME_H -#include "fio.h" +#include +#include +#include "os/os.h" #define CALIBRATE_RUNS 10 #define CALIBRATE_SCALE 1000 @@ -25,15 +27,17 @@ struct idle_prof_thread { pthread_t thread; int cpu; int state; - struct timeval tps; - struct timeval tpe; - double cali_time; /* microseconds to finish a unit wrok */ + struct timespec tps; + struct timespec tpe; + double cali_time; /* microseconds to finish a unit work */ double loops; double idleness; unsigned char *data; /* bytes to be touched */ pthread_cond_t cond; pthread_mutex_t init_lock; pthread_mutex_t start_lock; + + os_cpu_mask_t cpu_mask; }; struct idle_prof_common { @@ -52,6 +56,6 @@ extern void fio_idle_prof_init(void); extern void fio_idle_prof_start(void); extern void fio_idle_prof_stop(void); -extern void show_idle_prof_stats(int, struct json_object *); +extern void show_idle_prof_stats(int, struct json_object *, struct buf_output *); #endif