X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=fio.h;h=9490edc11e1a2ea924f1dea3bf75f2d9e36d0fdf;hb=b6f9676ef7077c9c6d60a9f63c3c1e3d44a625a1;hp=92e6a88d66881378eb4d6d407e158775fa11e097;hpb=4fee8096bff598ab565ac1d258d584d584433341;p=fio.git diff --git a/fio.h b/fio.h index 92e6a88d..9490edc1 100644 --- a/fio.h +++ b/fio.h @@ -13,13 +13,13 @@ #include #include -#include "compiler.h" +#include "compiler/compiler.h" #include "list.h" #include "rbtree.h" #include "md5.h" #include "crc32.h" -#include "arch.h" -#include "os.h" +#include "arch/arch.h" +#include "os/os.h" #include "mutex.h" #ifdef FIO_HAVE_SYSLET @@ -135,6 +135,7 @@ struct io_u { void *buf; unsigned long buflen; unsigned long long offset; + unsigned long long endpos; /* * IO engine state, may be different from above when we get @@ -224,6 +225,7 @@ enum fio_filetype { FIO_TYPE_FILE = 1, /* plain file */ FIO_TYPE_BD, /* block device */ FIO_TYPE_CHAR, /* character device */ + FIO_TYPE_PIPE, /* pipe */ }; enum fio_ioengine_flags { @@ -331,6 +333,7 @@ struct thread_stat { unsigned int io_u_map[FIO_IO_U_MAP_NR]; unsigned int io_u_lat[FIO_IO_U_LAT_NR]; unsigned long total_io_u[2]; + unsigned long short_io_u[2]; unsigned long long io_bytes[2]; unsigned long runtime[2]; @@ -409,6 +412,7 @@ struct thread_options { unsigned int file_service_type; unsigned int group_reporting; unsigned int fadvise_hint; + unsigned int zero_buffers; char *read_iolog_file; char *write_iolog_file; @@ -449,6 +453,7 @@ struct thread_data { struct fio_file *files; unsigned int files_index; unsigned int nr_open_files; + unsigned int nr_done_files; unsigned int nr_normal_files; union { unsigned int next_file; @@ -646,8 +651,9 @@ struct disk_util { struct list_head list; char *name; + char *sysfs_root; char path[256]; - dev_t dev; + int major, minor; struct disk_util_stat dus; struct disk_util_stat last_dus; @@ -745,6 +751,21 @@ extern void dup_files(struct thread_data *, struct thread_data *); extern void print_thread_status(void); extern void print_status_init(int); +/* + * disk util stuff + */ +#ifdef FIO_HAVE_DISK_UTIL +extern void show_disk_util(void); +extern void disk_util_timer_arm(void); +extern void init_disk_util(struct thread_data *); +extern void update_io_ticks(void); +#else +#define show_disk_util() +#define disk_util_timer_arm() +#define init_disk_util(td) +#define update_io_ticks() +#endif + /* * Thread life cycle. Once a thread has a runstate beyond TD_INITIALIZED, it * will never back again. It may cycle between running/verififying/fsyncing.