X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=fio.h;h=6bb21ebb2ace311c3b4643bb6adbfbbcf045b444;hb=24a24c12a04c45174c2d68ffb7fcb3f367e40dee;hp=b05cb3dfc395346fe02775e65d7a4fba5288ed43;hpb=e7e536b665bd6a9d3e936e0847dbbb6957101da4;p=fio.git diff --git a/fio.h b/fio.h index b05cb3df..6bb21ebb 100644 --- a/fio.h +++ b/fio.h @@ -47,6 +47,7 @@ #include "workqueue.h" #include "steadystate.h" #include "lib/nowarn_snprintf.h" +#include "dedupe.h" #ifdef CONFIG_SOLARISAIO #include @@ -140,6 +141,7 @@ enum { FIO_RAND_POISSON2_OFF, FIO_RAND_POISSON3_OFF, FIO_RAND_PRIO_CMDS, + FIO_RAND_DEDUPE_WORKING_SET_IX, FIO_RAND_NR_OFFS, }; @@ -259,9 +261,14 @@ struct thread_data { struct frand_state buf_state; struct frand_state buf_state_prev; + struct frand_state buf_state_ret; struct frand_state dedupe_state; struct frand_state zone_state; struct frand_state prio_state; + struct frand_state dedupe_working_set_index_state; + struct frand_state *dedupe_working_set_states; + + unsigned long long num_unique_pages; struct zone_split_index **zone_state_index; unsigned int num_open_zones; @@ -273,6 +280,11 @@ struct thread_data { int shm_id; + /* + * Job default IO priority set with prioclass and prio options. + */ + unsigned int ioprio; + /* * IO engine hooks, contains everything needed to submit an io_u * to any of the available IO engines. @@ -358,6 +370,8 @@ struct thread_data { uint64_t bytes_done[DDIR_RWDIR_CNT]; uint64_t *thinktime_blocks_counter; + struct timespec last_thinktime; + uint64_t last_thinktime_blocks; /* * State for random io, a bitmap of blocks done vs not done @@ -413,6 +427,7 @@ struct thread_data { */ struct flist_head io_log_list; FILE *io_log_rfile; + unsigned int io_log_blktrace; unsigned int io_log_current; unsigned int io_log_checkmark; unsigned int io_log_highmark;