[PATCH] disk_util: Allow an engine to turn off disk_util specifically
[fio.git] / fio.h
diff --git a/fio.h b/fio.h
index a60be104c249a1028339577ef3c52afb7a77f98d..0ca23cc0e6b09186b059e8bae86b266d22a6d5de 100644 (file)
--- a/fio.h
+++ b/fio.h
@@ -215,6 +215,7 @@ enum fio_ioengine_flags {
        FIO_RAWIO       = 1 << 1,       /* some sort of direct/raw io */
        FIO_DISKLESSIO  = 1 << 2,       /* no disk involved */
        FIO_NOEXTEND    = 1 << 3,       /* engine can't extend file */
+       FIO_NODISKUTIL  = 1 << 4,       /* diskutil can't handle filename */
 };
 
 /*
@@ -291,7 +292,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;
+       unsigned long total_io_u[2];
 
        unsigned long long io_bytes[2];
        unsigned long runtime[2];
@@ -473,6 +474,13 @@ struct thread_data {
         */
        struct timeval timeout_end;
        struct itimerval timer;
+
+       /*
+        * for fileservice, how often to switch to a new file
+        */
+       unsigned int file_service_nr;
+       unsigned int file_service_left;
+       struct fio_file *file_service_file;
 };
 
 /*
@@ -693,6 +701,7 @@ extern void io_u_queued(struct thread_data *, struct io_u *);
 extern void io_u_log_error(struct thread_data *, struct io_u *);
 extern void io_u_init_timeout(void);
 extern void io_u_set_timeout(struct thread_data *);
+extern void io_u_mark_depth(struct thread_data *, struct io_u *);
 
 /*
  * io engine entry points