X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=thread_options.h;h=05c2d1383e68403190d175608b995ece11d958fa;hb=575686bb85fa36f326524c505e83c54abc0d2f2b;hp=97c400fe046357c968bf24c7caba4560ab08d248;hpb=8b38f40138047975ea7a59b9ce06681ffdd2c31d;p=fio.git diff --git a/thread_options.h b/thread_options.h index 97c400fe..05c2d138 100644 --- a/thread_options.h +++ b/thread_options.h @@ -83,13 +83,16 @@ struct thread_options { unsigned long long size; unsigned long long io_size; unsigned int size_percent; + unsigned int size_nz; unsigned int io_size_percent; + unsigned int io_size_nz; unsigned int fill_device; unsigned int file_append; unsigned long long file_size_low; unsigned long long file_size_high; unsigned long long start_offset; unsigned long long start_offset_align; + unsigned int start_offset_nz; unsigned long long bs[DDIR_RWDIR_CNT]; unsigned long long ba[DDIR_RWDIR_CNT]; @@ -166,6 +169,7 @@ struct thread_options { fio_fp64_t zipf_theta; fio_fp64_t pareto_h; fio_fp64_t gauss_dev; + fio_fp64_t random_center; unsigned int random_generator; @@ -176,6 +180,7 @@ struct thread_options { unsigned int thinktime; unsigned int thinktime_spin; unsigned int thinktime_blocks; + unsigned int thinktime_blocks_type; unsigned int fsync_blocks; unsigned int fdatasync_blocks; unsigned int barrier_blocks; @@ -196,12 +201,13 @@ struct thread_options { unsigned long long zone_size; unsigned long long zone_capacity; unsigned long long zone_skip; + uint32_t zone_skip_nz; enum fio_zone_mode zone_mode; unsigned long long lockmem; enum fio_memtype mem_type; unsigned int mem_align; - unsigned long long max_latency; + unsigned long long max_latency[DDIR_RWDIR_CNT]; unsigned int exit_what; unsigned int stonewall; @@ -313,6 +319,7 @@ struct thread_options { unsigned int gid; unsigned int offset_increment_percent; + unsigned int offset_increment_nz; unsigned long long offset_increment; unsigned long long number_ios; @@ -348,6 +355,7 @@ struct thread_options { unsigned int read_beyond_wp; int max_open_zones; unsigned int job_max_open_zones; + unsigned int ignore_zone_limits; fio_fp64_t zrt; fio_fp64_t zrf; }; @@ -382,14 +390,19 @@ struct thread_options_pack { uint64_t size; uint64_t io_size; uint32_t size_percent; + uint32_t size_nz; uint32_t io_size_percent; + uint32_t io_size_nz; uint32_t fill_device; uint32_t file_append; uint32_t unique_filename; + uint32_t pad3; uint64_t file_size_low; uint64_t file_size_high; uint64_t start_offset; uint64_t start_offset_align; + uint32_t start_offset_nz; + uint32_t pad4; uint64_t bs[DDIR_RWDIR_CNT]; uint64_t ba[DDIR_RWDIR_CNT]; @@ -462,11 +475,10 @@ struct thread_options_pack { struct zone_split zone_split[DDIR_RWDIR_CNT][ZONESPLIT_MAX]; uint32_t zone_split_nr[DDIR_RWDIR_CNT]; - uint8_t pad1[4]; - fio_fp64_t zipf_theta; fio_fp64_t pareto_h; fio_fp64_t gauss_dev; + fio_fp64_t random_center; uint32_t random_generator; @@ -477,6 +489,7 @@ struct thread_options_pack { uint32_t thinktime; uint32_t thinktime_spin; uint32_t thinktime_blocks; + uint32_t thinktime_blocks_type; uint32_t fsync_blocks; uint32_t fdatasync_blocks; uint32_t barrier_blocks; @@ -497,6 +510,7 @@ struct thread_options_pack { uint64_t zone_capacity; uint64_t zone_skip; uint64_t lockmem; + uint32_t zone_skip_nz; uint32_t mem_type; uint32_t mem_align; @@ -504,6 +518,7 @@ struct thread_options_pack { uint32_t stonewall; uint32_t new_group; uint32_t numjobs; + /* * We currently can't convert these, so don't enable them */ @@ -609,12 +624,14 @@ struct thread_options_pack { uint32_t gid; uint32_t offset_increment_percent; + uint32_t offset_increment_nz; uint64_t offset_increment; uint64_t number_ios; uint64_t latency_target; uint64_t latency_window; - uint64_t max_latency; + uint64_t max_latency[DDIR_RWDIR_CNT]; + uint32_t pad5; fio_fp64_t latency_percentile; uint32_t latency_run; @@ -640,6 +657,8 @@ struct thread_options_pack { uint32_t allow_mounted_write; uint32_t zone_mode; + int32_t max_open_zones; + uint32_t ignore_zone_limits; } __attribute__((packed)); extern void convert_thread_options_to_cpu(struct thread_options *o, struct thread_options_pack *top);