Increase accuracy of disk utility percentage
[fio.git] / fio.h
diff --git a/fio.h b/fio.h
index b1360dd3504f69dde093e5fd518f0fc23556a558..932ee83f4b7b6047f1c15cfd2ad9a3c55a0ee3ce 100644 (file)
--- a/fio.h
+++ b/fio.h
@@ -343,6 +343,8 @@ struct fio_file {
 
        int references;
        enum fio_file_flags flags;
+
+       struct disk_util *du;
 };
 
 /*
@@ -786,8 +788,29 @@ struct disk_util {
 
        unsigned long msec;
        struct timeval time;
+
+       struct fio_mutex *lock;
+       unsigned long users;
 };
 
+static inline void disk_util_inc(struct disk_util *du)
+{
+       if (du) {
+               fio_mutex_down(du->lock);
+               du->users++;
+               fio_mutex_up(du->lock);
+       }
+}
+
+static inline void disk_util_dec(struct disk_util *du)
+{
+       if (du) {
+               fio_mutex_down(du->lock);
+               du->users--;
+               fio_mutex_up(du->lock);
+       }
+}
+
 #define DISK_UTIL_MSEC (250)
 
 /*