X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=fio.h;h=1ccc862e4a59ed455f40ef72fc2d5fad1be67382;hb=87c27b45f8d50720d7a9f12abc7e83d0a7463021;hp=b6ffe60b900cfa0f391d9e6c030e3e217f152817;hpb=df9c26b10275a631e83e7cc92d5f7384998b2c49;p=fio.git diff --git a/fio.h b/fio.h index b6ffe60b..1ccc862e 100644 --- a/fio.h +++ b/fio.h @@ -75,6 +75,7 @@ struct io_sample { unsigned long time; unsigned long val; enum fio_ddir ddir; + unsigned int bs; }; /* @@ -429,10 +430,11 @@ struct thread_options { unsigned long long start_offset; unsigned int bs[2]; + unsigned int ba[2]; unsigned int min_bs[2]; unsigned int max_bs[2]; - struct bssplit *bssplit; - unsigned int bssplit_nr; + struct bssplit *bssplit[2]; + unsigned int bssplit_nr[2]; unsigned int nr_files; unsigned int open_files; @@ -571,6 +573,8 @@ struct thread_data { char *sysfs_root; + unsigned long rand_seeds[6]; + os_random_state_t bsrange_state; os_random_state_t verify_state; @@ -807,9 +811,12 @@ extern void write_iolog_close(struct thread_data *); /* * Logging */ -extern void add_clat_sample(struct thread_data *, enum fio_ddir, unsigned long); -extern void add_slat_sample(struct thread_data *, enum fio_ddir, unsigned long); -extern void add_bw_sample(struct thread_data *, enum fio_ddir, struct timeval *); +extern void add_clat_sample(struct thread_data *, enum fio_ddir, unsigned long, + unsigned int); +extern void add_slat_sample(struct thread_data *, enum fio_ddir, unsigned long, + unsigned int); +extern void add_bw_sample(struct thread_data *, enum fio_ddir, unsigned int, + struct timeval *); extern void show_run_stats(void); extern void init_disk_util(struct thread_data *); extern void update_rusage_stat(struct thread_data *); @@ -820,7 +827,7 @@ extern void finish_log_named(struct thread_data *, struct io_log *, const char * extern void __finish_log(struct io_log *, const char *); extern struct io_log *agg_io_log[2]; extern int write_bw_log; -extern void add_agg_sample(unsigned long, enum fio_ddir); +extern void add_agg_sample(unsigned long, enum fio_ddir, unsigned int); /* * Time functions @@ -853,6 +860,7 @@ extern int fio_show_option_help(const char *); extern void fio_options_dup_and_init(struct option *); extern void options_mem_dupe(struct thread_data *); extern void options_mem_free(struct thread_data *); +extern void td_fill_rand_seeds(struct thread_data *); #define FIO_GETOPT_JOB 0x89988998 #define FIO_NR_OPTIONS 128 @@ -1032,6 +1040,8 @@ static inline void fio_file_reset(struct fio_file *f) { f->last_free_lookup = 0; f->last_pos = f->file_offset; + if (f->file_map) + memset(f->file_map, 0, f->num_maps * sizeof(int)); } static inline void clear_error(struct thread_data *td)